# 关于 SCIM

{% hint style="success" %}
对应的[官方文档地址](https://bitwarden.com/help/about-scim/)
{% endhint %}

跨域身份管理系统 (SCIM) 用于在您的 Bitwarden 组织中自动配置成员和群组。Bitwarden 服务器提供了一个 SCIM 端点，该端点具有有效的 [SCIM API 密钥](#setting-up-scim)，将接受来自您的身份提供程序 (IdP) 的用户和群组的配置和取消配置请求。

Bitwarden 支持使用标准属性映射的 SCIM v2，并提供以下集成文档：

* [JumpCloud](/docs/admin-console/manage-members/scim/jumpcloud-scim-integration.md)
* [Microsoft Entra ID](/docs/admin-console/manage-members/scim/microsoft-entra-id-scim-integration.md)
* [Okta](/docs/admin-console/manage-members/scim/okta-scim-integration.md)
* [OneLogin](/docs/admin-console/manage-members/scim/onelogin-scim-integration.md)
* [Ping Identity](/docs/admin-console/manage-members/scim/ping-identity-scim-integration.md)

{% hint style="info" %}
本文仅讨论邀请用户和管理您的订阅席位数量的可用方法之一：

* 所有组织都可以[手动邀请用户](/docs/admin-console/manage-members/user-management.md)和更新[席位数量](/docs/plans-and-pricing/manage-subscription-seats-in-your-organization.md)。
* 团队版和企业版组织可以使用 [SCIM](/docs/admin-console/manage-members/scim/about-scim.md)。
* 团队版和企业版组织可以使用 [Directory Connector](/docs/admin-console/manage-members/directory-connector/about-directory-connector.md)。
* 企业版组织可以[使用 JIT](/docs/admin-console/login-with-sso/jit-provisioning.md)。
  {% endhint %}

## 设置 SCIM <a href="#setting-up-scim" id="setting-up-scim"></a>

要设置 SCIM，您的 IdP 需要一个 SCIM URL 和 API 密钥，以便向 Bitwarden 服务器发出授权请求。这些值可以通过导航到管理控制台的**设置** → **SCIM 配置**获取：

<div align="left" data-with-frame="true"><figure><img src="https://bitwarden.com/assets/6sw1kuK7GuZ3dfQkkbs6rV/a4f4e18e561733297338e4ed44c6ed8c/2024-12-03_15-25-46.png?w=1197&#x26;fm=avif" alt=""><figcaption><p>SCIM 配置</p></figcaption></figure></div>

{% hint style="success" %}
以下部分涵盖了可用于设置 SCIM 的通用信息，但 Bitwarden 建议使用以下集成文档之一：

* [JumpCloud](/docs/admin-console/manage-members/scim/jumpcloud-scim-integration.md)
* [Microsoft Entra ID](/docs/admin-console/manage-members/scim/microsoft-entra-id-scim-integration.md)
* [Okta](/docs/admin-console/manage-members/scim/okta-scim-integration.md)
* [OneLogin](/docs/admin-console/manage-members/scim/onelogin-scim-integration.md)
* [Ping Identity](/docs/admin-console/manage-members/scim/ping-identity-scim-integration.md)
  {% endhint %}

### 必需属性 <a href="#required-attributes" id="required-attributes"></a>

Bitwarden 使用此处列出的标准 SCIM v2 属性名称，但每个 IdP 也可以使用在配置期间映射到 Bitwarden 的备用名称。

#### 用户属性 <a href="#user-attributes" id="user-attributes"></a>

对于每个用户，Bitwarden 将使用以下属性：

* 表明用户处于 `active` 状态的指示（**必填**）
* `email`<mark style="color:red;">**ª**</mark> 或 `userName`（**必填**）
* `displayName`
* `externalId`

{% hint style="info" %} <mark style="color:red;">**ª**</mark> - 由于 SCIM 允许用户拥有多个电子邮箱地址（以对象数组形式表示），Bitwarden 将使用包含 `"primary": true` 的对象的 `value`。
{% endhint %}

#### 群组属性 <a href="#group-attributes" id="group-attributes"></a>

对于每个群组，Bitwarden 将使用以下属性：

* `displayName`（**必填**）
* `members`<mark style="color:red;">**ª**</mark>
* `externalId`

{% hint style="info" %} <mark style="color:red;">**ª**</mark> - `members` 是一个对象数组，每个对象代表该群组中的一名用户。**必须使用群组配置才能将已同步用户分配到群组**，但是 SCIM API 无法用于查询群组中的成员。要查询群组成员资格，请使用[公共 API](https://bitwarden.com/help/api/)。
{% endhint %}

## SCIM 事件日志 <a href="#scim-events" id="scim-events"></a>

用 SCIM 的组织会捕获 SCIM 集成所执行操作的[事件日志](/docs/admin-console/oversight-visibility/event-logging/event-logs.md)，包括邀请用户和移除用户，以及创建或删除群组。SCIM 衍生的事件将在**成员**列中注册 `SCIM`。

## 现有对象更新 <a href="#updates-to-existing-objects" id="updates-to-existing-objects"></a>

以下章节将说明当 IdP 发生变更时，SCIM 配置会将哪些更改同步到组织的成员和群组：

### 成员状态 <a href="#member-status" id="member-status"></a>

当用户在您的 IdP 中被暂时挂起或停用（而非直接移除）时，其对您组织的访问权限将[自动撤销](/docs/admin-console/manage-members/revoke-remove/temporarily-revoke-access.md)。被撤销访问权限的用户将显示在组织**成员**界面的**已撤销**选项卡中，并且将：

* 无法访问任何组织密码库项目和集合
* 无法[使用 SSO 登录](/docs/admin-console/login-with-sso.md)或[组织层面 Duo](/docs/account/two-step-login/setup-two-step-login/two-step-login-via-duo.md) 两步登录
* 不受组织[策略](/docs/admin-console/oversight-visibility/enterprise-policies.md)的约束
* 不占用许可证席位

{% hint style="danger" %}
对于那些使用[受信任设备 SSO](/docs/admin-console/login-with-sso/trusted-devices.md) 而没有主密码的成员账户：

* [从您的组织中移除它们](/docs/admin-console/manage-members/revoke-remove/permanently-remove-access.md)将切断它们对 Bitwarden 账户的所有访问权限，除非该账户此前通过[账户恢复](/docs/admin-console/manage-members/account-recovery/about-account-recovery.md)功能设置过主密码，且在移除前至少使用该主密码登录过一次。

除非在用户被从组织中移除**之前**采取了上述步骤，否则用户将无法重新加入您的组织。如果没有采取上述步骤，每个被移除的用户都必须[删除自己的账户](/docs/plans-and-pricing/delete-an-account-or-organization.md#delete-your-personal-account)，然后重新获得邀请才能创建账户和加入组织。

* [撤销对组织的访问权限](/docs/admin-console/manage-members/revoke-remove/temporarily-revoke-access.md)，但不会从组织中移除他们，他们仍然可以登录 Bitwarden 并**仅可以**访问他们的个人密码库。
  {% endhint %}

### 成员电子邮箱地址 <a href="#member-email-address" id="member-email-address"></a>

{% hint style="info" %}
使用[受信任设备](/docs/admin-console/login-with-sso/trusted-devices/about-trusted-devices.md)的组织成员无法更改其电子邮件地址，除非已获得带有[账户恢复](/docs/admin-console/manage-members/account-recovery/about-account-recovery.md)功能的主密码。

使用 [Key Connector](/docs/self-hosting/key-connector/about-key-connector.md) 的组织成员无法更改其电子邮件地址。成员账户需要[删除](/docs/admin-console/manage-members/revoke-remove/delete-member-accounts.md)并重新配置才能更改电子邮件地址。请提醒用户在删除账户前导出数据，并在使用新电子邮件地址重新配置账户后导入数据。
{% endhint %}

使用 SCIM 配置的成员可以在 Bitwarden 及其组织的相关 IdP 中更改电子邮箱地址。要更改 SCIM 组织中的 Bitwarden 电子邮箱地址，请执行以下操作：

1. 通过导航到**设置** → **我的账户**在 Bitwarden 中更改电子邮箱地址（[了解更多](/docs/password-manager/more/password-manager-faqs.md#q-how-do-i-change-my-email-address)）。
2. 在 Bitwarden 上更改电子邮箱地址后，更新 IdP 或 AD 客户端上的用户值。这可以是 `externalid` 或相应的值，取决于组织对 IdP 的选择。
3. 重新同步 IdP 或 AD 客户端，以实现更改。

{% hint style="info" %}
如果在更新 Bitwarden 电子邮箱之前，用户电子邮箱地址已在 IdP 或 AD 上更新并同步过，则更新后的电子邮箱将被视为新的用户。
{% endhint %}

### 成员显示名称 <a href="#member-display-name" id="member-display-name"></a>

虽然 SCIM API 请求可配置为包含成员显示名称，但该数据目前不会在初始配置时或 IdP 发生变更时同步至 Bitwarden。

### 成员外部 ID <a href="#member-external-id" id="member-external-id"></a>

虽然 SCIM 配置会在用户首次配置时为其分配一个外部 ID，但目前它不会将 IdP 中的外部 ID 更改同步至 Bitwarden。

## SCIM 实施前的对象更新 <a href="#updates-to-pre-scim-objects" id="updates-to-pre-scim-objects"></a>

{% hint style="danger" %}
如果您在实施 SCIM 之前使用 Directory Connector，请务必在启用 SCIM 配置之前将 Directory Connector 关闭。
{% endhint %}

以下章节说描述了 SCIM 配置将为组织中现有成员和群组同步的变更内容（**针对 SCIM 实施前已存在的成员和群组**）：

### SCIM 实施之前加入的成员 <a href="#members-added-prior-to-scim" id="members-added-prior-to-scim"></a>

SCIM 配置将根据成员是否存在于 IdP 中，对 **SCIM 实施之前加入您的组织**的成员采取不同的处理方式：

* **存在于 IdP 中**且在 SCIM 实施前加入的成员不会被重复创建、无需重新加入组织，也不会从任何群组中移除。
* **不存在于 IdP 中**且在 SCIM 实施前加入的成员不会被移除，也不会被添加或移出任何群组。

### SCIM 实施之前创建的群组 <a href="#groups-created-prior-to-scim" id="groups-created-prior-to-scim"></a>

SCIM 配置将根据群组是否存在于 IdP 中，对 **SCIM 实施前创建于您的组织**的群组采取不同的处理方式：

* **存在于 IdP 中**且在 SCIM 实施前创建的群组不会被重复创建或移除任何成员，但会根据身份提供商分配的成员资格添加新成员。
* **不存在于 IdP 中**且在 SCIM 实施前创建的群组不会被移除，也不会添加或移除任何成员。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.ppgg.in/docs/admin-console/manage-members/scim/about-scim.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
