以编程方式使用文档

LangSmith 提供了灵活的控制方式来管理用户如何加入您的 组织 使用 单点登录 (SSO) 身份验证。您可以独立启用或禁用即时配置 (JIT) 和用户邀请,以满足您组织的安全和入职要求。

启用 SSO 后,您有两个独立设置: JIT 配置 在用户通过 SSO 登录时自动添加用户,而 邀请 允许管理员在用户可以访问组织之前手动邀请用户。 配置这些设置 以任意组合来控制您的用户入职工作流程。

本页面说明这些设置如何工作以及如何配置它们。

设置

您可以独立控制以下两个设置来管理用户如何加入您的组织。

JIT 配置

jit_provisioning_enabled 设置控制自动用户配置。启用后,通过您的 SSO 提供商进行身份验证的用户将被自动添加到您的 组织 并被分配到默认 工作空间 ,默认 角色。有关更多详细信息,请参阅 配置默认 SSO 设置。禁用后,用户必须通过以下方式被明确邀请或添加 SCIM 才能访问组织。

邀请

invites_enabled 设置控制手动用户邀请。启用后, 组织管理员 可以在用户登录前发送邀请。被邀请的用户在通过 SSO 登录时可以领取邀请。禁用后,不允许手动邀请,用户只能通过 JIT 配置或 SCIM.

更新设置

您可以在 LangSmith UI 或使用 LangSmith API 更新这些设置:

UI

LangSmith UI:

  1. 导航到 **设置** → **组织** → **访问和安全** → **常规**.
  2. 切换 **启用 JIT 配置** 和 **允许邀请** 根据需要。
  3. 配置 SSO 默认工作空间和角色 in **设置** → **组织** → **SSO 配置**.

API

使用以下方式以编程方式更新组织设置 更新组织信息 endpoint:

curl -X PATCH https://api.smith.langchain.com/api/v1/organizations/current/info \
  -H "Authorization: Bearer $LANGSMITH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jit_provisioning_enabled": true,
    "invites_enabled": true
  }'

响应包含更新后的当前组织配置:

{
  "id": "org-uuid",
  "display_name": "My Organization",
  "jit_provisioning_enabled": true,
  "invites_enabled": true,
  "sso_login_slug": "my-org",
  ...
}

用户访问工作原理

当用户尝试通过 SSO 登录时,LangSmith 遵循此决策流程:

1. 用户通过 SSO 提供商进行身份验证。 1. LangSmith 检查用户是否已有组织访问权限:

    ├─ YES → User is signed in
    └─ NO → Continue to step 3
    

1. 检查邀请是否已启用 **和** 存在待处理邀请:

   ├─ YES → Provision into organization with invite's organization role; provision into workspaces if invite included workspaces
   └─ NO → Continue to step 4
    

1. 检查 JIT 配置是否已启用:

   ├─ YES → Automatically provision user with default SSO workspaces/role
   └─ NO → Deny access (user must be added via SCIM or by administrator)
    

配置场景

开放访问(两者都启用)

Configuration: - ✓ JIT 配置已启用 - ✓ 邀请已启用

Behavior: - 用户可以立即通过 SSO 登录并自动配置。 - 管理员可以发送邀请以分配特定角色或工作区。 - 受邀用户获得邀请配置;非受邀用户获得默认 SSO 配置。

Example:

User alex@company.com signs in via SSO:
  - No invite exists → Added to default workspaces with Viewer role

User billy@company.com signs in via SSO:
  - Invite exists for Editor role in "Production" workspace → Added only to "Production" workspace with Editor role (invite takes precedence)

仅 JIT(邀请已禁用)

Configuration: - ✓ JIT 配置已启用 - ✗ 邀请已禁用

Behavior: - 所有通过 SSO 进行身份验证的用户都会自动配置。 - 管理员无法发送邀请。 - 所有新用户获得相同的默认工作区和角色。

仅邀请(JIT 已禁用)

Configuration: - ✗ JIT 配置已禁用 - ✓ 邀请已启用

Behavior: - 用户必须先被邀请才能访问组织。 - 没有邀请的用户即使拥有有效的 SSO 凭据也会被拒绝访问。 - 对谁可以访问组织进行细粒度控制。

Example:

User alex@company.com signs in via SSO:
  - Has pending invite → Successfully joins organization

User billy@company.com signs in via SSO:
  - No invite → Access denied (must request invite from administrator)

封闭访问(两者都禁用)

Configuration: - ✗ JIT 配置已禁用 - ✗ 邀请已禁用

Behavior: - SSO 用户无法自动加入组织。 - 无法发送邀请。 - 用户必须通过 SCIM 配置,或在用户已通过 SCIM 加入组织后由管理员直接配置。

用户访问快速参考

JIT 已启用邀请已启用待处理邀请结果
已认领邀请(使用邀请配置)
自动配置(使用默认 SSO 配置)
N/AAuto-provisioned (default SSO configuration)
已认领邀请
No**拒绝访问** - 必须被邀请
N/A**拒绝访问** - 必须使用 SCIM 或管理员

配置默认 SSO 设置

JIT 配置 已启用时,为新用户配置默认设置:

  1. 默认工作区角色。选择新用户自动配置时获得的 工作区角色 。各角色权限详情请参阅 组织和工作区操作。选项包括:
  1. 默认工作区。选择用户自动加入的一个或多个工作区。用户在被选中的所有工作区中具有相同的角色。配置方法:
  1. Go to **设置** → **组织** → **SSO 配置**.
  2. 设置 **默认工作区角色**.
  3. 选择 **默认工作区**.
  4. 保存您的配置。

SCIM 集成

如果您的组织使用 SCIM (跨域身份管理系统),则可以通过您的身份提供商自动配置和管理用户。SCIM 提供了与 JIT 和邀请设置配合使用的额外用户管理机制。

SSO 群组同步

SSO 群组同步 是 SCIM 的替代方案,在登录时从 SSO 令牌中读取群组成员身份,并使用 SCIM 命名规范分配组织和工zuo qu 角色。同步在每次登录时 JIT 和邀请解析之后运行,且仅管理其创建的成员身份。

与 JIT、邀请和 SCIM 的优先级:

  • SCIM-sourced 成员身份不会被 SSO 群组同步修改。
  • SSO 群组同步来源的 成员身份在每次登录时根据令牌中的群组成员身份完全替换。
  • 手动配置和 JIT 配置的 成员资格不会通过SSO组同步进行修改。

我们建议每个组织选择SCIM或SSO组同步中的一种,而非同时使用两者,以避免出现令人困惑的优先级行为。关于配置和权衡,请参阅 SSO组同步.

相关文档