本参考文档阐释了 LangSmith 用于管理组织级和工作区级权限的基于角色的访问控制系统。
基于角色的访问控制是一个用于管理工作区级权限的企业版功能。如果您对此功能感兴趣,请联系我们的销售团队。其他计划默认为所有用户使用管理员角色。
LangSmith 的 RBAC 系统管理工作区内的用户权限。RBAC 允许您控制谁可以访问您的 LangSmith 工作区以及他们可以在其中执行哪些操作。 在 LangSmith 中,每个用户拥有:
  • 一个在整个组织范围内适用的 组织角色(独立于工作区 RBAC)。
    • The Organization User and Organization Viewer roles are only available in organizations on Plus and Enterprise plans. In Developer organizations (single workspace), all users are assigned the Organization Admin role by default.
  • 每个其所属的工作区对应一个 工作区角色(需要企业版 RBAC 功能)。
在企业版计划中,组织可以创建具有细粒度权限组合的自定义工作区角色。 要了解如何设置 RBAC 并为用户分配角色,请参阅用户管理指南。您的身份提供商也可以通过 SCIM 组或 SSO 组同步自动分配角色。
For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference.

角色类型

组织角色

组织角色与工作区 RBAC 功能截然不同,用于管理整个组织范围内的能力。这些角色由系统定义,无法修改或扩展。组织用户和组织查看者角色仅在高级版和企业版计划的组织中可用。在开发者组织(单个工作区)中,所有用户默认被分配组织管理员角色。

组织管理员

描述:拥有管理所有组织配置、用户、账单和工作区的完全权限。 权限:
  • organization:manage - 对组织设置、SSO、安全、账单的完全控制
  • organization:read - 对所有组织信息的读取访问
  • organization:pats:create - 创建组织级个人访问令牌
For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference. 主要能力: 有关设置和管理组织的详细信息,请参阅管理概述。

组织操作员

用于日常操作的管理权限,包括工作区和用户管理,但无法管理组织管理员或创建组织范围的的服务密钥。 权限:
  • organization:manage - 对组织设置、工作区和非管理员用户的控制
  • organization:read - 对所有组织信息的读取访问
  • organization:pats:create - 创建个人访问令牌
For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference. 主要能力:
  • 创建和管理工作区
  • 邀请组织成员(除组织管理员外的所有角色)
  • 管理非管理员组织成员(修改和移除组织用户、查看者和操作员)
  • 为成员分配工作区角色
  • 创建工作区范围的服务密钥和服务账户
  • 查看组织用量和分析
  • 查看审计日志(企业版)
限制:
  • 无法邀请、修改或移除组织管理员
  • 无法为用户分配组织管理员角色
  • 无法创建组织范围(非工作区特定)的服务密钥
  • 不会自动添加到现有工作区(仅被添加到其创建或被明确邀请的工作区)
  • 无法管理组织账单或订阅计划
  • 无法配置SSO 或认证方法
  • 无法创建或管理自定义角色

组织用户

描述:对组织信息的读取权限,以及创建个人访问令牌的能力。 权限:
  • organization:read - 对组织信息的读取访问
  • organization:pats:create - 创建个人访问令牌
For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference. 主要能力:
  • 查看组织成员和工作区
  • 查看组织设置(但不能修改)
  • 创建用于 API 访问的个人访问令牌
  • 加入其被邀请的工作区
限制:
  • 无法修改组织设置
  • 无法管理账单或订阅
  • 无法创建或删除工作区
  • 无法邀请或移除组织成员
  • 无法管理角色或权限
您可以将组织用户添加到一个工作区子集,并为其分配工作区角色(如果启用了 RBAC),这些角色指定了工作区级别的权限。

组织查看者

描述:对组织信息的只读访问权限。 权限:
  • organization:read - 对组织信息的读取访问
For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference. 主要能力:
  • 查看组织成员和工作区
  • 查看组织设置
限制:
  • 无法在组织级别修改任何内容
  • 无法创建个人访问令牌
  • 无法管理账单、工作区或成员

工作区角色

工作区角色是企业版 RBAC 功能的一部分,控制用户可以在工作区内对资源执行哪些操作:
基于角色的访问控制是一个仅向企业版客户提供的功能。如果您对此功能感兴趣,请联系我们的销售团队。其他计划默认为所有用户使用管理员角色。

工作区管理员

描述:对所有资源拥有完全权限并能够管理工作区的角色。 权限:
  • 所有资源类型的创建、读取、更新、删除和共享权限
  • 工作区管理能力
For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference.

工作区编辑者

描述:对大多数资源拥有完全权限。无法管理工作区设置或删除某些关键资源。 与管理员的主要区别:
  • 无法删除运行记录
  • 无法管理工作区设置(如更改工作区名称等)
  • 无法管理工作区成员(添加、移除或更新成员角色)

工作区查看者

描述:对所有工作区资源的只读访问权限。 权限:对所有资源类型的只读访问。 For a comprehensive list of required permissions along with the operations and roles that can perform them, refer to the Organization and workspace reference.
有关为用户分配工作区角色的分步说明,请参阅用户管理指南。

自定义角色

创建自定义角色适用于企业版计划的组织。
组织管理员可以根据其组织需求,创建具有特定权限组合的自定义角色。

创建自定义角色

自定义角色在组织级别创建,并可以分配给该组织内任何工作区中的用户。 步骤:
  1. 导航至组织 设置 > 角色。
  2. 点击 创建自定义角色。
  3. 选择要包含在该角色中的权限。
  4. 将自定义角色分配给特定工作区中的用户。
有关每个操作所需的具体权限详情,请参阅组织和工作区操作参考。 请注意关于自定义角色的以下细节:
  • 自定义角色只能由组织管理员创建和管理。
  • 自定义角色是组织特定的(不可在组织间转移)。
  • 每个自定义角色可以拥有任意的工作区级别权限组合。
  • 自定义角色不能拥有组织级别权限。
  • 用户可以在不同的工作区拥有不同的角色(包括自定义角色)。

限制角色

角色限制适用于企业版计划的组织。
组织管理员和组织操作员(拥有 organization:manage 权限的角色)可以将任何角色(系统角色或自定义角色)标记为受限。受限角色只能由拥有内置工作区管理员角色的用户分配给工作区成员。拥有 workspaces:manage-members 权限但不拥有工作区管理员角色的用户无法分配受限角色。 这可以防止权限提升:即使用户被授权管理工作区成员资格,他们也无法授予已标记为超出其权限范围的角色。 默认行为:默认情况下没有角色被限制。组织必须明确地为每个角色切换限制状态。 要限制一个角色,请在 LangSmith 用户界面中:
  1. 导航至组织 设置 > 角色。
  2. 在角色表格中找到您想要限制的角色。
  3. 为该角色打开 受限 设置。
一旦角色被限制,成员邀请和成员编辑流程将对不拥有工作区管理员角色的用户隐藏该角色,并且 API 将拒绝非工作区管理员调用者尝试分配它的行为。 要取消对一个角色的限制,请遵循相同的步骤并关闭 受限 设置。
角色限制适用于系统角色(工作区管理员、工作区编辑者、工作区查看者)和自定义角色。它在 LangSmith 云服务和自托管版本中均可用。

理解权限行为

一些权限在自定义角色中使用时提供细粒度控制:
  • workspaces:manage 不包括管理工作区成员的能力。要允许自定义角色添加、移除或更新工作区成员,您必须明确授予 workspaces:manage-members 权限。内置的工作区管理员角色自动包含这两个权限。
  • workspaces:manage-model-configs 控制创建、编辑或删除模型配置(包括附加 OAuth 客户端凭据)的能力,以及更改每个模型可用于哪些 LangSmith 功能的能力。它独立于 workspaces:manage——请在应该能够配置模型的自定义角色上明确授予它。内置的工作区管理员角色自动包含它。
  • bulk-exports:read 和 bulk-exports:manage 涵盖批量导出端点(列出、创建、取消导出以及管理目的地)。在自定义角色中使用它们可以在没有 workspaces:manage 的情况下授予最小权限的批量导出访问。内置的工作区管理员角色包含 bulk-exports:manage,所有具有读取能力的角色自动包含 bulk-exports:read。
  • projects:increase-trace-tier 和 projects:decrease-trace-tier 是独立的,可以分别授予。例如,您可以允许一个角色降低保留级别而不允许其提高保留级别。如果用户缺少这两个权限,保留设置 UI 将完全隐藏。如果他们只有一个,UI 将部分启用(不允许的方向将被禁用)。
  • projects:update 仅涵盖元数据更新(名称、描述、标签),并且不授予更改跟踪保留的能力。要允许自定义角色修改跟踪级别,您必须明确授予 projects:increase-trace-tier、projects:decrease-trace-tier 或两者。