Sim 企业版(Enterprise Edition)功能架构与自托管配置指南

发布时间:2026/9/11 20:48:32

Sim 企业版(Enterprise Edition)功能架构与自托管配置指南 Sim 企业版Enterprise Edition功能架构与自托管配置指南【免费下载链接】simSim is the collaborative workspace to build, deploy, and monitor AI agents and workflows. Used by 100,000 builders.项目地址: https://gitcode.com/GitHub_Trending/sim16/sim本指南基于 Sim 开源仓库的apps/sim/ee目录系统讲解企业版的功能组成SSO 单点登录、权限组访问控制、白标定制等、许可证边界、运行时功能开关环境变量机制以及各功能模块的源码组织方式。读完本文你将掌握如何在自托管部署中开启企业特性、如何理解服务端开关 前端展示开关的双环境变量约定以及每个企业功能背后的实现模块与测试位置可直接用于生产部署的规划与排障。一、企业版目录定位ee/是什么在 apps/sim/ee 目录中Sim 集中存放了需要Sim Enterprise 订阅才能在生产环境使用的企业级功能。该目录在构建期是必需的——代码库中各处直接 import 企业功能模块删除ee/目录会导致构建失败而功能的可见性是否对用户开放则在运行时由环境变量控制。从目录结构看企业版功能分为以下主要模块目录功能核心文件ssoOIDC / SAML 单点登录集成sso-form.tsx、sso-settings.tsx、sso-auth.tsxaccess-control权限组Permission Groups细粒度访问控制access-control.tsx、permission-check.tswhitelabeling企业部署的自定义品牌与主题branding-provider.tsx、inject-theme.tsaudit-logs审计日志audit-logs.tsx、constants.tscredential-groups企业托管 OAuth 凭据集合credential-groups-settings.tsx等custom-blocks组织级可复用自定义块custom-blocks.tsxdata-drains数据导出流Export streamsdata-drains-settings.tsx、destinations/registry.tsxdata-retention运行数据保留与删除data-retention-settings.tsxsession-policy会话策略session-policy-settings.tsxorganization-usage组织用量监控usage-summary.tsx、usage-monitoring.tsxworkspace-forking工作区 Fork复制/同步/提升create-fork.ts、fork-sync/、promote/等说明ee/README.md正文只列举了 SSO、Access Control、Whitelabeling 三项代表特性但实际仓库中企业模块远不止这三个——audit-logs、credential-groups、custom-blocks、data-drains、data-retention、session-policy、organization-usage、workspace-forking 均位于同一目录下构成完整的企业能力矩阵。二、许可证边界开发可用生产需订阅企业版使用独立的 EE LICENSESim Enterprise LicenseCopyright © 2025 Sim Studio, Inc.与仓库根目录的 LICENSE 相互独立。许可要点允许开发、测试、评估用途以及内部非生产使用禁止未经有效企业订阅在生产环境使用、修改/适配/创建衍生作品、再分发/再许可/转让、移除或篡改专有声明生产要求企业功能的生产部署必须持有有效的 Sim Enterprise 订阅官方许可证文本中提供了联系 salessim.ai 的渠道。部署规划时应据此区分自托管测试环境可免费启用全部企业功能与生产环境需订阅合规两类场景。三、运行时开关机制环境变量控制功能可见性ee/README.md明确功能可见性在运行时由环境变量控制例如NEXT_PUBLIC_ACCESS_CONTROL_ENABLED、NEXT_PUBLIC_SSO_ENABLED。仓库中的 .env.example 给出了完整的官方约定其核心规则是One switch enables organizations, SSO, permission groups, audit logs, custom blocks, whitelabeling, session policies, data retention, data drains, forks, and the inbox. Set both —the server value grants access, the NEXT_PUBLIC_ value decides what the settings UI shows.即每一个企业特性通常有一对环境变量且含义不同环境变量作用ENTERPRISE_ENABLED/NEXT_PUBLIC_ENTERPRISE_ENABLED总开关同时打开组织、SSO、权限组、审计日志、自定义块、白标、会话策略、数据保留、数据导出、Fork、InboxACCESS_CONTROL_ENABLED/NEXT_PUBLIC_ACCESS_CONTROL_ENABLED权限组SSO_ENABLED/NEXT_PUBLIC_SSO_ENABLEDSAML 与 OIDC 登录WHITELABELING_ENABLED/NEXT_PUBLIC_WHITELABELING_ENABLED自定义品牌AUDIT_LOGS_ENABLED/NEXT_PUBLIC_AUDIT_LOGS_ENABLED审计日志CUSTOM_BLOCKS_ENABLED/NEXT_PUBLIC_CUSTOM_BLOCKS_ENABLED组织级可复用块SESSION_POLICIES_ENABLED/NEXT_PUBLIC_SESSION_POLICIES_ENABLED会话策略DATA_RETENTION_ENABLED/NEXT_PUBLIC_DATA_RETENTION_ENABLED运行数据保留删除默认关闭DATA_DRAINS_ENABLED/NEXT_PUBLIC_DATA_DRAINS_ENABLED数据导出流ORGANIZATIONS_ENABLED/NEXT_PUBLIC_ORGANIZATIONS_ENABLED仅组织功能FORKING_ENABLED工作区 Fork无前端开关服务端控制CREDENTIAL_GROUPS企业托管 OAuth 凭据集合无前端开关配置要点来自 .env.example 的官方注释成对设置服务端值如SSO_ENABLED负责授予访问权NEXT_PUBLIC_前缀值负责设置页 UI 是否展示该功能两者应同时设置。显式覆盖优先单个特性的显式开关会覆盖ENTERPRISE_ENABLED总开关。因此可以用ENTERPRISE_ENABLEDtrue批量开启后再单独关闭某一项也可以只开启某一个特性。组织是前提大多数企业功能从拥有该工作区的组织读取配置因此部署时需要存在组织才能生效。设置INSTANCE_ORGANIZATION实例组织名后注册时所有用户会被放入同一个共享组织其工作区归组织所有留空则由你自己通过 Admin API 管理组织。部分开关无前端对应FORKING_ENABLED、CREDENTIAL_GROUPS等只有服务端开关说明其功能面在服务端执行路径上而非设置 UI。3.1 从源码看开关如何被消费以权限组为例服务端开关在授权漏斗中消费 ee/access-control/utils/permission-check.ts 汇聚了来自/lib/permission-groups的解析层getUserPermissionConfig、resolveWorkspaceGroup、resolveVerifiedUserAccessControlContext等并通过getAllowedIntegrationsFromEnv、isInvitationsDisabled等 env-flags 判断环境开关当用户请求的 Provider/模型不在其权限组允许列表时会抛出ProviderNotAllowedError/ModelNotAllowedError并携带权限组原因信息。这印证了 README 所说的构建期必需、运行时由环境变量控制可见性——开关决定解析层是否放行而模块代码始终随构建打进产物。此外仓库还存在一套更精细的AppConfig 驱动的特性开关lib/core/config/feature-flags.ts用于 hosted 部署按 workspace/org/user/admin 维度做灰度门控每个 flag 都有唯一的fallback密钥如CREDENTIAL_GROUPS、TABLE_ROW_TTL、KNOWLEDGE_MEMBER_ACCESS在未启用 AWS AppConfig 时退化为环境变量为真即开启fallbackFlags()启用时则从 AppConfigfeature-flagsprofile 拉取门控规则约 30s 缓存并按全局 enabled → 工作区/组织/用户白名单 → adminEnabled的短路顺序求值。这一机制与ee/的企业模块叠加使用例如credential-groupsflag 依赖CREDENTIAL_GROUPS环境变量做回退同时 hosted 工作区还要求持有 Enterprise 订阅。四、三大代表特性详解4.1 SSOOIDC 与 SAML 单点登录企业版的 SSO 模块apps/sim/ee/sso提供 OIDC 与 SAML 两类协议集成前端由三个主要组件构成sso-settings.tsx管理员配置 SSO 的入口页面sso-form.tsx具体的 SSO 配置表单协议、Issuer、证书、域名绑定等sso-auth.tsx登录侧的 SSO 认证交互。模块在 constants.ts 中维护了一份可信 SSO Provider 标识符白名单SSO_TRUSTED_PROVIDERS用于配置表单中的校验与自动补全覆盖 Okta含 okta-saml / okta-prod / okta-staging 等、Azure ADazure-ad / azure-active-directory / azure-enterprise、ADFS、Auth0、OneLogin、JumpCloud、Ping Identity / PingFederate / PingOne、Shibboleth、Google Workspace 以及通用的saml/saml2/oidc/openid-connect/custom-sso/enterprise-sso等标识。这意味着企业管理员可以基于主流 IdP 或任意符合 OIDC/SAML 标准的自定义 IdP 接入。配置时需设置SSO_ENABLEDtrue与NEXT_PUBLIC_SSO_ENABLEDtrue服务端放行 设置 UI 展示。SSO 相关的 hooks 与测试位于 ee/sso/hooks含domains.ts、sso.ts及对应测试域名管理通过verified-domains-section.tsx完成。4.2 Access Control基于权限组的细粒度访问控制访问控制模块apps/sim/ee/access-control提供**权限组Permission Groups**机制用于对用户访问做细粒度管理典型能力包括模型 / Provider 级限制如 permission-check.ts 中的ProviderNotAllowedErrorProvider X is not allowed for model Y based on your permission group settings与ModelNotAllowedErrorModel Z is not allowed based on your permission group settings说明权限组可以精确到某个用户/组能用哪些 Provider 与模型集成白名单Integration allowlist通过 integration-allowlist-rows.ts 及其测试管理允许使用的集成列表并可结合环境变量getAllowedIntegrationsFromEnv合并环境级白名单能力规则Capability rules通过CAPABILITY_RULES/refuseCapability对用户的操作能力做静态规则判定操作访问门控Operation accesscreateToolAccessGate可对工具调用等操作做访问门控块类型豁免isBlockTypeAccessControlExempt用于判断哪些块类型不受访问控制约束。UI 侧由 access-control.tsx、group-detail.tsx、workspace-select.tsx组成并配套 permission-groups.test.tsx、access-control.test.tsx、permission-check.test.ts、permission-gate-subject.test.ts 等测试用例。需要强调的是权限组的核心解析逻辑并不都在ee/目录如permission-check.ts顶部注释所述解析层位于/lib/permission-groups约 24 个领域模块的operations.ts会经由授权漏斗调用它ee/access-control只是做**转发导出re-export**并承载 UI 与校验器。这种分层把 Provider 注册表、块注册表、计费等重依赖隔离在lib/permission-groups之外避免领域模块被拉入重依赖。因此研究权限组机制时应同时查看 lib/permission-groups含resolve.server.ts、capabilities.ts、integration-allowlist.ts、operation-access.ts、config-scope.server.ts等。开启方式设置ACCESS_CONTROL_ENABLEDtrue与NEXT_PUBLIC_ACCESS_CONTROL_ENABLEDtrue或在总开关ENTERPRISE_ENABLEDtrue基础上显式保留/覆盖该项。4.3 Whitelabeling自定义品牌与主题白标模块apps/sim/ee/whitelabeling用于企业部署的自定义品牌与主题化核心文件包括branding-provider.tsx向应用注入品牌配置的 React Provider含测试 branding-provider.test.tsxwhitelabeling-settings.tsx品牌设置管理页含测试inject-theme.ts主题注入逻辑metadata.ts与品牌相关的页面元数据org-branding.ts / org-branding-utils.ts组织级品牌信息的读取与工具函数branding.ts 与 index.ts品牌配置模型与统一出口hooks 侧为 whitelabel.ts。从模块拆分可以推断白标能力覆盖**品牌配置模型branding→ 主题注入inject-theme→ 运行时 Provider 下发branding-provider→ 设置页管理whitelabeling-settings**的完整链路并支持按组织维度读取品牌信息。开启方式WHITELABELING_ENABLEDtrue与NEXT_PUBLIC_WHITELABELING_ENABLEDtrue。五、其余企业模块速览除 README 点名的三项外ee/内还有多个企业能力各自配有组件、hooks 与测试简要速览如下审计日志audit-logsaudit-logs.tsx constants.ts search-params.tshooks 侧 audit-logs.ts配套 UI 与 hooks 测试凭据组credential-groups企业托管 OAuth 凭据集合含 credential-groups-settings.tsx、成员/工作流绑定credential-group-invite-modal.tsx、credential-group-add-workflow-modal.tsx、credential-group-access.tsx以及 Slack 托管用户、Databricks MCP 连接器等垂直场景组件自定义块custom-blockscustom-blocks.tsx 与 custom-block-detail.tsx实现组织级可复用块数据导出data-drains导出流配置 contenteditable="false">【免费下载链接】simSim is the collaborative workspace to build, deploy, and monitor AI agents and workflows. Used by 100,000 builders.项目地址: https://gitcode.com/GitHub_Trending/sim16/sim创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/11 20:48:32

六自由度齿轮弯扭耦合动力学MATLAB仿真与实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/11 20:48:32

8款AI辅助写作工具测评:降低论文检测率的实用指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/11 23:49:16

AI漫剧制作指南:5款免费工具从0到1打造爆款动态漫画

1. 为什么AI漫剧突然火起来,以及免费工具的选型思路漫剧这个词,最近半年在短视频平台上的热度比我预想的还要猛。简单说,它就是介于"动态漫画"和"短剧"之间的一种内容形态:画面是漫画风格,但有人物…

2026/9/11 23:49:15

JavaWeb宿舍管理系统:JSP+Servlet+MySQL三层架构实战

简介:本资源是一套完整的JavaWeb学生宿舍管理系统毕业设计项目,面向计算机专业本科生及Java初学者,解决高校宿舍管理中人员登记、房间分配、访客记录与报修处理等核心业务场景。压缩包含1070个文件,总大小73.72MB,涵盖…

2026/9/11 23:44:15

STM32H7 I2S驱动6+1麦克风阵列:从硬件到声源定位实现

简介:这份资源面向电子设计竞赛参赛者、毕业设计及课程设计学生,提供2022年电赛e题“61麦克风阵列”基于STM32H7的I2S驱动完整工程方案,适用于课设实训、大作业、大创项目等场景。包内共275个文件,包含41个C源文件与82个同名头文件…

2026/9/10 16:39:38

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/10 11:16:38

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/9 16:31:09

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/10 12:32:02

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/10 15:19:50

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/10 15:49:53

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码