> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# IdP 组集成

> 为 Devin Enterprise 配置身份提供商（IdP）组集成，以简化用户访问权限管理。

<div id="sign-in-to-devin-enterprise">
  ## 登录 Devin Enterprise
</div>

我们建议您配置单点登录 (SSO) 和统一登录，以提升安全性并改善易用性。SSO 使您的用户可以通过贵组织的身份提供商登录 Devin Enterprise。请参阅 [Microsoft Entra ID SSO](/zh/enterprise/security-access/sso/azure)、[Okta SSO](/zh/enterprise/security-access/sso/okta)、[SAML SSO](/zh/enterprise/security-access/sso/saml) 或 [OIDC SSO](/zh/enterprise/security-access/sso/oidc)。

如果您未配置 SSO，用户可以使用选定的外部账户 (例如 Google) 登录 Devin Enterprise。
不建议使用 GitHub，因为个人 GitHub 邮箱地址往往与工作邮箱不一致。

<div id="technical-overview-of-devins-rbac-architecture">
  ## Devin 的 RBAC 架构技术概览
</div>

Devin Enterprise 实现了一个可与您现有身份管理基础设施集成的全面基于角色的访问控制 (RBAC) 系统。本节将介绍如何为您的组织配置和使用 RBAC。

<div id="identity-provider-integration">
  ### 身份提供商集成
</div>

完成将 Devin Enterprise 与身份提供商 (IdP) 的集成后，身份验证流程如下：

1. 在身份验证过程中，Devin Enterprise 会从您的 IdP 接收组信息
2. 您的 IdP 会将组信息作为声明包含在 JWT 令牌中发送
3. Devin Enterprise 使用这些组来确定访问权限

<div id="configuring-group-based-access">
  ### 配置基于用户组的访问控制
</div>

你可以配置哪些 IdP 组可以访问特定组织：

1. 将现有的 IdP 组映射到 Devin Enterprise 组织
2. 为每个用户组分配合适的角色 (成员或管理员)
3. 用户将根据其所属的 IdP 组自动继承相应权限

<div id="access-control-implementation">
  ### 访问控制实现
</div>

Devin Enterprise 通过多种方式来确定用户的访问权限：

* **直接成员关系**：将单个用户直接添加到组织
* **组成员关系**：用户从其 IdP 组成员关系中继承访问权限
* **Enterprise 管理员**：管理员可以访问其 Enterprise 账户中的所有组织

<Note>
  直接成员关系和组成员关系是**叠加**的。用户最终权限等于通过直接成员关系和组成员关系分配给其所有角色的综合权限。这两种分配方式之间不存在优先级或覆盖关系。
</Note>

<div id="repository-access-control">
  ### 仓库访问控制
</div>

对于 Git 仓库访问，Devin Enterprise：

* 继承组织级别访问控制的权限
* 支持在仓库级别进行细粒度访问控制
* 在所有组件中保持一致的授权

这种方式允许您在继续使用现有身份管理系统的同时，为 Devin Enterprise 资源提供安全的、基于角色的访问控制。

<div id="sync-users-and-groups-from-your-identity-provider">
  ## 从身份提供商同步用户和群组
</div>

可以将用户和群组从 IdP 同步到 Devin Enterprise，确保他们具备适当的访问权限。群组可以具有成员或管理员角色，并且可以隶属于多个组织。

要启用自动用户匹配，请提供从群组到角色和组织的映射关系。完成认证后，Devin Enterprise 会从 IdP 发送的 JWT 令牌中提取群组信息，并据此匹配用户。

```
{
  "sub": "12345",
  "name": "John Doe",
  "email": "johndoe@example.com",
  "groups": ["Engineering", "Admins"],  // 组声明
  "iss": "https://idp.example.com",
  "aud": "your_app_client_id"
}
```

<Warning>
  如果您需要使用 [SCIM](mailto:sales@cognition.ai)，请联系我们。
</Warning>

<Note>
  当某个用户在您的身份提供方中被移除时，该用户会在 Devin Enterprise 中被停用。您可以通过企业设置配置 IdP 组权限。有关更多信息，请参见[自定义角色 & RBAC](/zh/enterprise/security-access/custom-roles)。
</Note>

<div id="enterprise-access-control">
  ## 企业访问控制
</div>

Devin 企业账户可以拥有数量不限的组织。

| 访问条件            | 描述                                    |
| :-------------- | :------------------------------------ |
| 组织成员            | 如果你是该组织的成员，则可以访问该组织。                  |
| 组织管理员 (拥有该组织)   | 你可以访问并编辑该组织。                          |
| 企业管理员 (拥有该企业账户) | 你可以访问并编辑该企业账户及其下属组织。                  |
| 属于成员/管理员的 IdP 组 | 如果你属于某个作为成员或管理员的 IdP 组，则可以访问该企业账户或组织。 |

<Note>
  IdP 组会在用户登录时同步，因此更改组成员关系后需要重新进行身份验证。
</Note>

***
