- 设置访问控制:配置基于角色的访问控制(RBAC)以管理工作区内的用户权限,包括创建自定义角色并将其分配给用户。
- SAML 单点登录(企业版):为使用 SAML 2.0 的企业客户设置单点登录认证,包括主流身份提供商的配置。
- SCIM 用户配置(企业版):使用 SCIM 在您的身份提供商和 LangSmith 之间自动进行用户配置和取消配置。
设置访问控制
RBAC(基于角色的访问控制)是仅面向企业客户的功能。如果您对此功能感兴趣,请联系我们的销售团队。其他计划默认所有用户均使用
管理员 角色。在设置访问控制之前,阅读管理概述页面可能会对您有所帮助。
workspaces:manage 权限的用户可以管理工作区设置,拥有 workspaces:manage-members 权限的用户可以添加、移除和更新工作区成员。内置的工作区管理员角色同时包含这两种权限。
有关工作区角色及其权限的完整参考,请参阅基于角色的访问控制指南。关于每个角色可执行的具体操作,请参阅组织和工单操作参考。
创建角色
默认情况下,LangSmith 自带一组系统角色:管理员:拥有工作区内所有资源的完全访问权限。查看者:拥有工作区内所有资源的只读访问权限。编辑者:拥有除工作区管理(添加/移除用户、更改角色、配置服务密钥)之外的所有权限。
组织管理员可以创建自定义角色以满足您的需求。
要创建角色,请导航至组织设置页面中成员和角色部分的角色选项卡。请注意,您创建的新角色将在您组织内的所有工作区中可用。
点击创建角色按钮来创建一个新角色。将会打开一个创建角色表单。

为用户分配角色
设置好角色后,您可以将其分配给用户。要为用户分配角色,请导航至组织设置页面的工作区部分中的工作区成员选项卡。 每个用户都有一个角色下拉菜单,您可以使用它来为他们分配角色。

为您的组织设置 SAML 单点登录
单点登录 (SSO) 功能适用于企业云客户,允许用户通过单一认证源访问 LangSmith。这使管理员能够集中管理团队访问权限,并提高信息安全性。 LangSmith 的 SSO 配置是使用 SAML(安全断言标记语言)2.0 标准构建的。SAML 2.0 能够将身份提供商 (IdP) 连接到您的组织,从而实现更简单、更安全的登录体验。 SSO 服务允许用户使用一组凭据(例如,用户名或电子邮件地址和密码)访问多个应用程序。该服务仅对用户已获得授权的所有应用程序进行一次最终用户身份验证,并在同一会话期间用户切换应用程序时消除进一步提示。SSO 的好处包括:- 为组织所有者简化跨系统的用户管理。
- 使组织能够强制执行自己的安全策略(例如,MFA)。
- 消除了最终用户记住和管理多个密码的需要。通过允许在多个应用程序的单一访问点登录,简化了最终用户体验。
即时 (JIT) 配置
LangSmith 在使用 SAML SSO 时支持即时配置。这允许通过 SAML SSO 登录的人员自动成为组织及选定工作区的成员。有关管理 JIT 配置和用户邀请的详细信息,请参阅管理 SSO 组织中的用户访问。JIT 配置仅对新用户运行,即尚未通过不同的登录方法使用相同电子邮件地址访问组织的用户。
登录方法和访问权限
为您的组织完成 SAML SSO 配置后,用户将能够通过 SAML SSO 以及其他登录方法(例如用户名/密码或 Google 认证)进行登录:- 通过 SAML SSO 登录时,用户只能访问已配置 SAML SSO 的对应组织。
- 仅将 SAML SSO 作为唯一登录方法的用户没有个人组织。
- 通过任何其他方法登录时,用户可以访问已配置 SAML SSO 的组织以及他们所属的任何其他组织。
仅强制执行 SAML SSO
在强制执行仅 SAML SSO 的组织中不支持用户邀请。初始工作区成员身份和角色由 JIT 配置决定,后续更改可在 UI 中管理。
为了在自动化用户管理中获得更大的灵活性,LangSmith 支持 SCIM。
您必须通过 SAML SSO 登录才能将此设置更新为“仅 SAML SSO”。这是为了确保 SAML 设置有效,并避免将用户锁定在组织之外。
先决条件
- 您的组织必须使用企业版计划。
- 您的身份提供商 (IdP) 必须支持 SAML 2.0 标准。
- 只有
组织管理员可以配置 SAML SSO。
初始配置
-
在您的 IdP 中:使用以下详细信息配置一个 SAML 应用程序,然后复制元数据 URL 或 XML 以供步骤 3 使用。
以下 URL 在美国和欧盟地区有所不同。请确保选择正确的链接。
- 单点登录 URL(或 ACS URL):
- 受众 URI(或 SP 实体 ID):
- NameID 格式:电子邮件地址。
- 应用程序用户名:电子邮件地址。
- 必需的声明:
sub和email。
-
在 LangSmith 中:转到 设置 -> 成员和角色 -> SSO 配置。填写所需信息并提交以激活 SSO 登录:
-
填写
SAML 元数据 URL或SAML 元数据 XML。 -
选择
默认工作区角色和默认工作区。通过 SSO 登录的新用户将被添加到指定的工作区,并具有所选角色。默认工作区角色和默认工作区是可编辑的。更新后的设置将仅适用于新用户,不适用于现有用户。- (即将推出)
SAML 元数据 URL和SAML 元数据 XML是可编辑的。这通常仅在加密密钥轮换/过期或元数据 URL 更改但仍使用相同 IdP 时才需要。
-
填写
Entra ID (Azure)
有关更多信息,请参阅 Microsoft 的文档。 步骤 1:创建新的 Entra ID 应用程序集成-
使用特权角色(例如,
全局管理员)登录 Azure 门户。在左侧导航窗格中,选择Entra ID服务。 - 导航到 企业应用程序,然后选择 所有应用程序。
- 单击 创建您自己的应用程序。
-
在 创建您自己的应用程序 窗口中:
- 为您的应用程序输入一个名称(例如,
LangSmith)。 - 选择 集成您在库中找不到的任何其他应用程序(非库)。
- 为您的应用程序输入一个名称(例如,
- 单击 创建。
- 打开您创建的企业应用程序。
- 在左侧导航中,选择 管理 > 单一登录。
- 在单一登录页面上,单击 SAML。
-
更新 基本 SAML 配置:
标识符(实体 ID):回复 URL(断言消费者服务 URL):- 将
中继状态、注销 URL和登录 URL留空。 - 单击 保存。
-
确保所需的声明存在,并带有 命名空间:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims:sub:user.objectid。emailaddress:user.userprincipalname或user.mail(如果使用后者,请确保所有用户在联系信息下填写了电子邮件字段)。- (可选)对于 SCIM,请参阅设置文档以获取有关
唯一用户标识符(Name ID)的具体说明。
- 在基于 SAML 的登录页面上的 SAML 证书 下,复制 应用程序联合元数据 URL。
-
在 Entra ID 中将应用程序分配给用户/组:
- 选择 管理 > 用户和组。
- 单击 添加用户/组。
-
在 添加分配 窗口中:
- 在 用户 下,单击 未选择任何用户。
- 搜索要分配给企业应用程序的用户,然后单击 选择。
- 确认用户已被选中,然后单击 分配。
- 让用户通过 SSO 配置 页面中的唯一登录 URL 登录,或者转到 管理 > 单一登录 并选择 测试 (应用程序名称) 的单一登录。
- 确保您已使用具有适当权限的管理员帐户登录。
- 在管理控制台中,转到 菜单 -> 应用 -> Web 和移动应用。
- 单击 添加应用,然后单击 添加自定义 SAML 应用。
- 输入应用名称,并可选地上传图标。单击 继续。
- 在 Google 身份提供商详细信息页面上,下载 IDP 元数据 并保存以供步骤 2 使用。单击 继续。
-
在
服务提供商详细信息窗口中,输入:ACS URL:实体 ID:- 将
起始 URL和已签名响应框留空。 - 将
Name ID 格式设置为EMAIL,并将Name ID保留为默认值(基本信息 > 主要电子邮件)。 - 单击
继续。
-
使用
添加映射确保所需的声明存在:基本信息 > 主要电子邮件->email
IDP 元数据 作为元数据 XML。
步骤 3:在 Google 中开启 SAML 应用
-
在
菜单 -> 应用 -> Web 和移动应用下选择 SAML 应用。 -
单击
用户访问权限。 -
开启服务:
-
要为组织中的每个人开启服务,请单击
为所有人开启,然后单击保存。 -
要为组织单位开启服务:
- 在左侧,选择组织单位,然后选择
开启。 - 如果服务状态设置为
继承,并且您希望即使在父级设置更改时也保留更新的设置,请单击覆盖。 - 如果服务状态设置为
已覆盖,请单击继承以恢复为其父级相同的设置,或者单击保存以保留新设置,即使父级设置更改。
- 在左侧,选择组织单位,然后选择
- 要为组织单位内或跨组织单位的一组用户开启服务,请选择一个访问群组。有关详细信息,请参阅使用群组自定义服务访问权限。
-
要为组织中的每个人开启服务,请单击
- 确保用户用于登录 LangSmith 的电子邮件地址与其用于登录 Google 域的电子邮件地址匹配。
Okta
支持的功能
- IdP 发起的 SSO(单点登录)
- SP 发起的 SSO
- 即时 (JIT) 配置
- 仅强制执行 SSO
配置步骤
有关更多信息,请参阅 Okta 的文档。 步骤 1:创建并配置 Okta SAML 应用程序通过 Okta 集成网络(推荐)
- 登录 Okta。
- 在右上角,选择 Admin(管理员)。该按钮在 Admin 区域不可见。
- 选择
浏览应用集成目录。 - 找到并选择 LangSmith 应用程序。
- 在应用程序概览页面上,选择添加集成。
- 将
ApiUrlBase留空。 - 填写
AuthHost:- 美国:
auth.langchain.com - 欧盟:
eu.auth.langchain.com
- 美国:
- (可选,如果也计划使用 SCIM)填写
LangSmithUrl:- 美国:
api.smith.langchain.com - 欧盟:
eu.api.smith.langchain.com
- 美国:
- 在应用程序可见性下,保持框未选中。
- 选择下一步。
- 选择
SAML 2.0。 - 填写
登录选项:应用程序用户名格式:电子邮件更新应用程序用户名的时间:创建和更新时允许用户安全查看其密码:保持 未选中。
- 复制 登录选项 页面中的 元数据 URL 以供下一步使用。
- 以管理员身份登录 Okta,然后转到 Okta 管理员控制台。
- 在 应用程序 > 应用程序 下,单击 创建应用集成。
- 选择 SAML 2.0。
-
输入
应用名称(例如,LangSmith)并可选择输入 应用徽标,然后单击 下一步。 -
在 配置 SAML 页面中输入以下信息:
单点登录 URL(ACS URL)。保持选中用于收件人 URL 和目的地 URL:受众 URI(SP 实体 ID):NameID 格式:持久。应用程序用户名:email。- 将其余字段留空或保留默认设置。
- 单击 下一步。
- 单击 完成。
- 从 登录 页面复制 元数据 URL 以供下一步使用。
- 在 应用程序 > 应用程序 下,选择在步骤 1 中创建的 SAML 应用程序。
- 在 分配 选项卡下,单击 分配,然后选择 分配给人员 或 分配给组。
- 进行所需的选择,然后依次单击 分配 和 完成。
SSO 配置 页面中的唯一登录 URL 登录,或者让用户从其 Okta 仪表板中选择该应用程序。
SP 发起的 SSO
配置服务提供商发起的 SSO 后,用户可以使用唯一的登录 URL 登录。您可以在 LangSmith UI 的 组织成员和角色 然后 SSO 配置 下找到此 URL。为您的组织设置 SCIM
跨域身份管理系统 (SCIM) 是一个开放标准,允许自动化用户配置。使用 SCIM,您可以在 LangSmith 组织和工作区中自动配置和取消配置用户,使您的组织身份提供商的用户访问保持同步。
SCIM 消除了手动用户管理的需要,并确保用户访问始终与您组织的身份系统保持同步。这可以实现:
- 自动化用户管理:根据用户在 IdP 中的状态,自动在 LangSmith 中添加、更新和移除用户。
- 减少管理开销:无需跨多个系统手动管理用户访问。
- 提高安全性:离开您组织的用户会自动从 LangSmith 中取消配置。
- 一致的访问控制:用户属性和组成员身份在系统之间同步。
- 扩展团队访问控制:有效管理具有许多工作区和自定义角色的大型团队。
- 角色分配:为用户组选择特定的组织角色和工作区角色。
要求
先决条件
- 您的组织必须使用企业版计划。
- 您的身份提供商 (IdP) 必须支持 SCIM 2.0。
- 只有 组织管理员 可以配置 SCIM。
- 对于云客户:必须能够为您的组织配置 SAML SSO。
- 对于自托管客户:必须启用 OAuth with Client Secret 身份验证模式。
- 对于自托管客户,必须允许从身份提供商到 LangSmith 的网络流量:
SCIM 连接通常需要 HTTP/1.1 或更高版本。如果您的客户端使用 HTTP/1.0,可能会遇到
426 Upgrade Required 错误。角色优先级
当用户属于同一工作区的多个组时,适用以下优先级:- 组织管理员组具有最高优先级。这些组中的用户将在所有工作区中成为
管理员。 - 最近创建的特定于工作区的组优先于其他工作区组。
当组被删除或用户从组中移除时,他们的访问权限将根据其剩余的组成员身份,并遵循优先级规则进行更新。SCIM 组成员身份会覆盖手动分配的角色或通过即时 (JIT) 配置分配的角色。我们建议禁用 JIT 配置以避免冲突。有关更多详细信息,请参阅管理 SSO 组织中的用户访问。
电子邮件验证
仅在云版本中,通过 SCIM 创建新用户会向该用户触发一封电子邮件。 他们必须通过单击此电子邮件中的链接来验证其电子邮件地址。 该链接在 24 小时后过期,如果需要,可以通过 SCIM 移除并重新添加用户来重新发送。属性和映射
组命名约定
组成员身份使用特定的命名约定映射到 LangSmith 工作区成员身份和工作区角色。默认情况下,组件之间的分隔符是冒号 (:),但您可以为组织配置自定义分隔符。
组织管理员组
格式:<可选前缀>Organization Admin 或 <可选前缀>Organization Admins
示例:
LS:Organization AdminsGroups-Organization AdminsOrganization Admin
<可选前缀><组织角色名称><分隔符><工作区名称><分隔符><工作区角色名称>
分隔符默认为 :(冒号)。支持的分隔符有::(冒号)、-(连字符)、_(下划线)、 (空格)、&(和号)。
使用默认冒号分隔符的示例:
LS:Organization User:Production:AnnotatorsGroups-Organization User:Engineering:DevelopersOrganization User:Marketing:Viewers
LS-Organization User-Production-AnnotatorsOrganization User-Engineering-Developers
如果您的工作区名称包含分隔符(例如,工作区
my-team 使用分隔符 -),LangSmith 将自动尝试所有可能的分割以找到有效的工作区和角色组合。配置自定义分隔符
要更改组织的 SCIM 组名称分隔符,请使用PATCH /api/v1/orgs/current/info 端点:
:(冒号)、-(连字符)、_(下划线)、 (空格)或 &(和号)。默认为 :(冒号)。
更改分隔符不会重命名现有的 SCIM 组。如果您更改了分隔符,则还必须更新身份提供商中的组名称以使用新的分隔符。
映射
尽管具体说明可能因身份提供商而异,但这些映射显示了 LangSmith SCIM 集成支持的内容:用户属性
| LangSmith 应用属性 | 身份提供商属性 | 匹配优先级 |
|---|---|---|
userName1 | 电子邮件地址 | |
active | !deactivated | |
emails[type eq "work"].value | 电子邮件地址2 | |
name.formatted | displayName OR givenName + familyName3 | |
givenName | givenName | |
familyName | familyName | |
externalId | sub4 | 1 |
- LangSmith 不需要
userName - 电子邮件地址是必需的
- 如果您的
displayName不符合名字 姓氏的格式,请使用计算出的表达式 - 为避免不一致,对于云客户,这应与 SAML
NameID断言匹配;对于自托管客户,应与 OAuth2.0sub声明匹配。
组属性
| LangSmith 应用属性 | 身份提供商属性 | 匹配优先级 |
|---|---|---|
displayName | displayName1 | 1 |
externalId | objectId | |
members | members |
步骤 1 - 配置 SAML SSO(仅限云)
SAML SSO 配置有两种情况:- 如果您的组织已配置 SAML SSO,您应跳过最初添加应用程序的步骤(从 Okta 集成网络添加应用程序 或 创建新的 Entra ID 应用程序集成),因为您已配置了一个应用程序,只需启用配置即可。
- 如果您是首次将 SAML SSO 与 SCIM 一起配置,请先按照说明设置 SAML SSO,_然后_按照此处的说明启用 SCIM。
NameID 格式
LangSmith 使用 SAML NameID 来标识用户。NameID 是 SAML 响应中的必需字段,且不区分大小写。 NameID 必须:- 对每个用户唯一。
- 是一个永不更改的持久值,例如随机生成的唯一用户 ID。
- 在每次登录尝试时精确匹配。不应依赖用户输入。
Persistent,除非您使用的是需要不同格式的字段(例如电子邮件)。
步骤 2 - 禁用 JIT 配置
在启用 SCIM 之前,请禁用即时 (JIT) 配置,以防止自动和手动用户配置之间发生冲突。为云版本禁用 JIT
使用PATCH /orgs/current/info 端点:
为自托管版本禁用 JIT
从 LangSmith chart 版本 0.11.14 开始,您可以为使用 SSO 的自托管组织禁用 JIT 配置。要禁用,请设置以下值:步骤 3 - 生成 SCIM Bearer 令牌
在自托管环境中,下面的完整 URL 可能看起来像
https://langsmith.yourdomain.com/api/v1/platform/orgs/current/scim/tokens(没有子域,注意 /api/v1 路径前缀)或 https://langsmith.yourdomain.com/subdomain/api/v1/platform/orgs/current/scim/tokens(有子域)- 有关更多详细信息,请参阅入口文档。GET /v1/platform/orgs/current/scim/tokensGET /v1/platform/orgs/current/scim/tokens/{scim_token_id}PATCH /v1/platform/orgs/current/scim/tokens/{scim_token_id}(仅支持description字段)DELETE /v1/platform/orgs/current/scim/tokens/{scim_token_id}
步骤 4 - 配置您的身份提供商
如果您使用 Azure Entra ID(以前称为 Azure AD)或 Okta,则有针对身份提供商设置的具体说明(请参阅 Azure Entra ID、Okta)。上述要求和步骤适用于所有身份提供商。
Azure Entra ID 配置步骤
有关更多信息,请参阅微软的文档。在自托管安装中,
oid JWT 声明将用作 sub。
有关更多详细信息,请参阅此 Microsoft Learn 链接
以及相关配置说明。- 使用特权角色(例如
Global Administrator)登录 Azure 门户。 - 导航到您现有的 LangSmith 企业应用程序。
- 在左侧导航栏中,选择 管理 > 预配。
- 点击 开始使用。
-
在 管理员凭据 下:
-
租户 URL:
- 美国:
https://api.smith.langchain.com/scim/v2 - 欧盟:
https://eu.api.smith.langchain.com/scim/v2 - 自托管:
<langsmith_url>/scim/v2
- 美国:
- 密钥令牌:输入在步骤 3 中生成的 SCIM Bearer Token。
-
租户 URL:
- 点击 测试连接 以验证配置。
- 点击 保存。
Mappings 下配置以下属性映射:
用户属性
将 目标对象操作 设置为 Create 和 Update(为安全起见,初始禁用 Delete):
| LangSmith 应用属性 | Microsoft Entra ID 属性 | 匹配优先级 |
|---|---|---|
userName | userPrincipalName | |
active | Not([IsSoftDeleted]) | |
emails[type eq "work"].value | mail1 | |
name.formatted | displayName 或 Join(" ", [givenName], [surname])2 | |
externalId | objectId3 | 1 |
- 用户的电子邮件地址必须在 Entra ID 中存在。
- 如果您的
displayName不符合名 姓的格式,请使用Join表达式。 - 为避免不一致,该值应与 SAML NameID 断言和
subOAuth2.0 声明匹配。对于云端的 SAML SSO,Unique User Identifier (Name ID)必需声明应为user.objectID,且Name identifier format应为persistent。
Create 和 Update(为安全起见,初始禁用 Delete):
| LangSmith 应用属性 | Microsoft Entra ID 属性 | 匹配优先级 |
|---|---|---|
displayName | displayName1 | 1 |
externalId | objectId | |
members | members |
- 在 应用程序 > 应用程序 下,选择您的 LangSmith 企业应用程序。
- 在 分配 选项卡下,点击 分配,然后选择 分配给人员 或 分配给组。
- 进行所需选择,然后点击 分配 和 完成。
- 在 预配 下,将 预配状态 设置为
On。 - 监控初始同步,确保用户和组被正确预配。
- 验证后,为用户和组映射启用
Delete操作。
Okta 配置步骤
您必须使用 Okta Lifecycle Management 产品。要使用 Okta 上的 SCIM,必须使用该产品层级。
支持的功能
- 创建用户
- 更新用户属性
- 停用用户
- 组推送(不支持组重命名)
- 导入用户
- 导入组
步骤 1:从 Okta 集成网络添加应用程序
如果您已通过 SAML(云端)或 OIDC 的 OAuth2.0(自托管)配置了 SSO 登录,请跳过此步骤。
- 在“常规”选项卡中,确保根据步骤 1 中的说明填写
LangSmithUrl。 - 在“预配”选项卡中,选择
Integration。 - 选择
Edit,然后选择Enable API integration。 - 对于 API Token,粘贴您在上面生成的 SCIM 令牌。
- 保持选中
Import Groups。 - 要验证配置,请选择 Test API Credentials。
- 选择 Save。
- 保存 API 集成详细信息后,左侧会出现新的设置选项卡。选择
To App。 - 选择 Edit。
- 选中 Create Users、Update Users 和 Deactivate Users 的 Enable 复选框。
- 选择 Save。
- 在“分配”选项卡中分配用户和/或组。已分配的用户将在您的 LangSmith 组中被创建和管理。
- 配置预配:在
Provisioning > To App > Provisioning to App下,点击Edit,然后勾选Create Users、Update User Attributes和Deactivate Users。 - 在
<application_name> Attribute Mappings下,按下图设置用户属性映射,并删除其余映射:

Okta 不支持除组名称本身以外的组属性,因此组名称必须遵循组命名约定一节中描述的命名规则。
其他身份提供商
其他身份提供商尚未经过测试,但可能根据其 SCIM 实现而正常工作。Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

