- 设置访问控制:配置基于角色的访问控制 (RBAC) 以管理工作区内的用户权限,包括创建自定义角色并将其分配给用户。
- SAML SSO(企业版):为企业客户设置使用 SAML 2.0 的单点登录身份验证,包括常用身份提供商的配置。
- SCIM 用户调配(企业版):使用 SCIM 自动化身份提供商和 LangSmith 之间的用户调配和解除调配。
设置访问控制
在设置访问控制之前,您可能会发现阅读管理概述页面很有帮助。
workspace:manage权限的用户才能管理工作区的访问控制设置。
创建角色
默认情况下,LangSmith 附带一组系统角色管理员:对工作区中的所有资源拥有完全访问权限。查看者:对工作区中的所有资源拥有只读访问权限。编辑者:拥有除工作区管理(添加/删除用户、更改角色、配置服务密钥)之外的全部权限。
组织管理员可以根据您的需求创建自定义角色。 要创建角色,请导航到组织设置页面的成员和角色部分中的角色选项卡。请注意,您创建的新角色将在您的组织中的所有工作区中可用。 单击创建角色按钮以创建新角色。将打开一个创建角色表单。 
为用户分配角色
设置好角色后,您可以将它们分配给用户。要为用户分配角色,请导航到组织设置页面的工作区部分的工作区成员选项卡 每个用户都有一个角色下拉菜单,您可以使用它为他们分配角色。 

为您的组织设置 SAML SSO
单点登录 (SSO) 功能适用于企业云客户,可通过单一身份验证源访问 LangSmith。这允许管理员集中管理团队访问并提高信息安全性。 LangSmith 的 SSO 配置是使用 SAML (Security Assertion Markup Language) 2.0 标准构建的。SAML 2.0 能够将身份提供商 (IdP) 连接到您的组织,以实现更简单、更安全的登录体验。 SSO 服务允许用户使用一组凭据(例如,姓名或电子邮件地址和密码)访问多个应用程序。该服务仅对用户有权访问的所有应用程序进行一次最终用户身份验证,并消除用户在同一会话期间切换应用程序时进一步的提示。SSO 的优势包括:- 简化组织所有者跨系统的用户管理。
- 使组织能够实施自己的安全策略(例如,MFA)。
- 消除最终用户记住和管理多个密码的需要。通过允许在一个访问点跨多个应用程序登录,简化最终用户体验。
即时 (JIT) 调配
LangSmith 在使用 SAML SSO 时支持即时调配。这允许通过 SAML SSO 登录的人员自动作为成员加入组织和选定的工作区。JIT 调配仅适用于新用户,即尚未通过其他登录方法使用相同电子邮件地址访问组织的用户。
登录方法和访问权限
为您的组织完成 SAML SSO 配置后,除了其他登录方法(例如用户名/密码或 Google 身份验证)外,用户还可以通过 SAML SSO 登录。- 通过 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)
- Name ID 格式:电子邮件地址。
- 应用程序用户名:电子邮件地址。
- 所需声明:
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/claimssub: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:- 将
Start URL和Signed response框留空。 - 将
Name ID格式设置为EMAIL,并将Name ID保留为默认值(基本信息 > 主要电子邮件)。 - 点击
继续。
-
使用
添加映射确保所需声明存在基本信息 > 主要电子邮件->电子邮件
IDP 元数据作为元数据 XML。 步骤 3:在 Google 中开启 SAML 应用-
在
菜单 -> 应用 -> Web 和移动应用下选择 SAML 应用 -
点击
用户访问。 -
开启服务
-
要为组织中的所有人开启服务,请点击
为所有人开启,然后点击保存。 -
要为组织单元开启服务
- 在左侧,选择组织单元,然后选择
开启。 - 如果服务状态设置为
继承,并且您希望保留更新后的设置,即使父设置发生更改,请点击覆盖。 - 如果服务状态设置为
已覆盖,请点击继承以还原为与其父项相同的设置,或点击保存以保留新设置,即使父设置发生更改。
- 在左侧,选择组织单元,然后选择
- 要为跨组织单元或组织单元内的一组用户开启服务,请选择访问组。有关详细信息,请转到使用组自定义服务访问。
-
要为组织中的所有人开启服务,请点击
- 确保用户用于登录 LangSmith 的电子邮件地址与他们用于登录 Google 域的电子邮件地址匹配。
Okta
支持的功能
- IdP 发起的 SSO(单点登录)
- SP 发起的 SSO
- 即时调配
- 仅强制 SSO
配置步骤
有关其他信息,请参阅 Okta 的文档。 步骤 1:创建和配置 Okta SAML 应用程序通过 Okta 集成网络(推荐)
- 登录 Okta。
- 在右上角,选择管理员。在管理员区域不可见此按钮。
- 选择
浏览应用程序集成目录。 - 查找并选择 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,以在下一步中使用。
SCIM 与此配置方法不兼容。请参阅通过 Okta 集成网络。
- 以管理员身份登录 Okta,然后转到 Okta 管理控制台。
- 在应用程序 > 应用程序下,单击创建应用程序集成。
- 选择SAML 2.0。
-
输入
应用程序名称(例如,LangSmith),并可选地输入应用程序徽标,然后单击下一步。 -
在配置 SAML页面中输入以下信息
单点登录 URL(ACS URL)。保持将此用于接收者 URL 和目标 URL选中受众 URI (SP 实体 ID):Name ID 格式:持久。应用程序用户名:电子邮件。- 将其余字段留空或设置为其默认值。
- 单击下一步。
- 单击完成。
- 从登录页面复制元数据 URL,以在下一步中使用。
- 在应用程序 > 应用程序下,选择在步骤 1 中创建的 SAML 应用程序。
- 在分配选项卡下,单击分配,然后选择分配给人员或分配给组。
- 进行所需的选择,然后单击分配和完成。
SSO 配置页面上的唯一登录 URL 登录,或者让用户从他们的 Okta 控制面板中选择应用程序。SP 发起的 SSO
一旦配置了服务提供商发起的 SSO,用户就可以使用唯一的登录 URL 登录。您可以在 LangSmith UI 中的组织成员和角色,然后SSO 配置下找到它。为您的组织设置 SCIM
跨域身份管理系统 (SCIM) 是一个开放标准,允许自动化用户调配。使用 SCIM,您可以自动在您的 LangSmith 组织和工作区中调配和解除调配用户,使用户访问与您的组织身份提供商同步。
SCIM 消除了手动用户管理的需要,并确保用户访问始终与组织的身份系统保持最新。这允许
- 自动化用户管理:根据用户在 IdP 中的状态,自动将用户添加、更新和从 LangSmith 中删除。
- 减少管理开销:无需在多个系统之间手动管理用户访问。
- 提高安全性:离开组织的用户会自动从 LangSmith 中解除调配。
- 一致的访问控制:用户属性和组成员资格在系统之间同步。
- 扩展团队访问控制:高效管理具有多个工作区和自定义角色的大型团队。
- 角色分配:为用户组选择特定的组织角色和工作区角色。
要求
先决条件
- 您的组织必须使用企业版计划。
- 您的身份提供商 (IdP) 必须支持 SCIM 2.0。
- 只有组织管理员才能配置 SCIM。
- 对于云客户:您的组织必须可配置SAML SSO。
- 对于自托管客户:必须启用带客户端密钥的 OAuth身份验证模式。
- 对于自托管客户,必须允许从身份提供商到 LangSmith 的网络流量
角色优先级
当用户属于同一工作区的多个组时,以下优先级适用- 组织管理员组具有最高优先级。这些组中的用户在所有工作区中都将是
管理员。 - 最近创建的工作区特定组优先于其他工作区组。
当组被删除或用户从组中删除时,他们的访问权限将根据其剩余的组成员资格,遵循优先级规则进行更新。SCIM 组成员资格将覆盖手动分配的角色或通过即时 (JIT) 调配分配的角色。我们建议禁用 JIT 调配以避免冲突。
电子邮件验证
仅在云中,使用 SCIM 创建新用户会向用户触发一封电子邮件。他们必须点击此电子邮件中的链接来验证其电子邮件地址。链接在 24 小时后过期,如果需要,可以通过 SCIM 移除并重新添加用户来重新发送。属性和映射
组命名约定
组成员资格通过特定命名约定映射到 LangSmith 工作区成员资格和工作区角色: 组织管理员组 格式:<可选前缀>组织管理员 或 <可选前缀>组织管理员 示例:LS:组织管理员组-组织管理员组织管理员
<可选前缀><组织角色名称>:<工作区名称>:<工作区角色名称> 示例:LS:组织用户:生产:标注员组-组织用户:工程:开发人员组织用户:营销:查看者
映射
虽然具体的说明可能因身份提供商而异,但这些映射显示了 LangSmith SCIM 集成支持的内容用户属性
| LangSmith 应用程序属性 | 身份提供商属性 | 匹配优先级 |
|---|---|---|
userName1 | 电子邮件地址 | |
活动 | !已停用 | |
emails[type eq "work"].value | 电子邮件地址2 | |
name.formatted | displayName 或 givenName + familyName3 | |
givenName | givenName | |
familyName | familyName | |
externalId | sub4 | 1 |
- LangSmith 不需要
userName - 电子邮件地址是必需的
- 如果您的
displayName与名字 姓氏的格式不匹配,请使用计算表达式 - 为避免不一致,这应与云客户的 SAML
NameID断言或自托管的subOAuth2.0 声明匹配。
组属性
| LangSmith 应用程序属性 | 身份提供商属性 | 匹配优先级 |
|---|---|---|
displayName | displayName1 | 1 |
externalId | objectId | |
成员 | 成员 |
步骤 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 持有者令牌
在自托管环境中,下面的完整 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 配置步骤
有关其他信息,请参阅 Microsoft 的文档。在自托管安装中,
oid JWT 声明用作sub。有关详细信息,请参阅此 Microsoft Learn 链接和相关配置说明。- 使用特权角色(例如,
全局管理员)登录 Azure 门户。 - 导航到您现有的 LangSmith 企业应用程序。
- 在左侧导航中,选择管理 > 调配。
- 单击开始。
-
在管理员凭据下
-
租户 URL:
- 美国:
https://api.smith.langchain.com/scim/v2 - 欧盟:
https://eu.api.smith.langchain.com/scim/v2 - 自托管:
/scim/v2
- 美国:
- 秘密令牌:输入在步骤 3 中生成的 SCIM 持有者令牌。
-
租户 URL:
- 点击测试连接以验证配置。
- 单击保存。
映射下配置以下属性映射: 用户属性 将目标对象操作设置为创建和更新(为安全起见,最初禁用删除):| LangSmith 应用程序属性 | Microsoft Entra ID 属性 | 匹配优先级 |
|---|---|---|
userName | userPrincipalName | |
活动 | 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,唯一用户标识符(Name ID)所需声明应该是user.objectID,并且Name 标识符格式应该是persistent。
创建和更新(为安全起见,最初禁用删除):| LangSmith 应用程序属性 | Microsoft Entra ID 属性 | 匹配优先级 |
|---|---|---|
displayName | displayName1 | 1 |
externalId | objectId | |
成员 | 成员 |
- 在应用程序 > 应用程序下,选择您的 LangSmith 企业应用程序。
- 在分配选项卡下,单击分配,然后选择分配给人员或分配给组。
- 进行所需的选择,然后单击分配和完成。
- 在调配下,将调配状态设置为
开启。 - 监控初始同步以确保用户和组正确调配。
- 验证后,为用户和组映射启用
删除操作。
Okta 配置步骤
您必须使用Okta 生命周期管理产品。此产品层级是使用 Okta 上的 SCIM 所必需的。
支持的功能
- 创建用户
- 更新用户属性
- 停用用户
- 组推送
- 导入用户
- 导入组
步骤 1:从 Okta 集成网络添加应用程序
如果您已通过 SAML(云)或带有 OIDC 的 OAuth2.0(自托管)配置了 SSO 登录,请跳过此步骤。
- 在“常规”选项卡中,确保已根据步骤 1 中的说明填写
LangSmithUrl - 在“调配”选项卡中,选择“集成”。
- 选择“编辑”,然后选择“启用 API 集成”。
- 对于 API 令牌,粘贴您上面生成的 SCIM 令牌。
- 保持“导入组”选中。
- 要验证配置,请选择“测试 API 凭据”。
- 选择“保存”。
- 保存 API 集成详细信息后,左侧会出现新的设置选项卡。选择
到应用程序。 - 选择“编辑”。
- 选中“创建用户”、“更新用户”和“停用用户”的“启用”复选框。
- 选择“保存”。
- 在“分配”选项卡中分配用户和/或组。分配的用户将在您的 LangSmith 组中创建和管理。
- 配置调配:在
调配 > 到应用 > 调配到应用下,点击编辑,然后勾选创建用户、更新用户属性和停用用户。 - 在
<应用程序名称>属性映射下,按如下所示设置用户属性映射,并删除其余属性

Okta 不支持除组名本身之外的组属性,因此组名必须遵循组命名约定部分中描述的命名约定。
其他身份提供商
其他身份提供商尚未测试,但可能根据其 SCIM 实现而起作用。以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。