

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 SCIM 从外部身份提供者预置用户和组
<a name="provision-automatically"></a>

IAM 身份中心支持使用身份管理系统 (SCIM) v2.0 协议将来自您的身份提供商 (IdP) 的用户和群组信息自动配置（同步）到 IAM Cross-domain 身份中心。配置 SCIM 同步时，您可以创建身份提供商 (IdP) 用户属性到 IAM Identity Center 中的命名属性的映射。这会导致 IAM Identity Center 和您的 IdP 之间的预期属性匹配。您可以使用 IAM Identity Center 的 SCIM 端点和您在 IAM Identity Center 中创建的持有者令牌，在 IdP 中配置此连接。

**Topics**
+ [使用自动预置的注意事项](#auto-provisioning-considerations)
+ [IdentityStore 通过 SCIM 配置访问 API](#scim-identitystore-api-considerations)
+ [如何监控访问令牌过期](#access-token-expiry)
+ [生成访问令牌](generate-token.md)
+ [启用自动预置](how-to-with-scim.md)
+ [删除访问令牌](delete-token.md)
+ [禁用自动预置](disable-provisioning.md)
+ [轮换访问令牌](rotate-token.md)
+ [审计和协调自动预置的资源](reconcile-auto-provisioning.md)
+ [手动预置](#provision-manually)

## 使用自动预置的注意事项
<a name="auto-provisioning-considerations"></a>

在开始部署 SCIM 之前，我们建议您首先查看以下有关其如何与 IAM Identity Center 配合使用的重要注意事项。有关其他预置注意事项，请参阅相应 IdP 适用的 [IAM Identity Center 身份源教程](tutorials.md)。
+ 如果您要预置主电子邮件地址，则此属性值对于每个用户必须是唯一的。在某些 IdPs情况下，主电子邮件地址可能不是真实的电子邮件地址。例如，它可能是看起来像电子邮件的通用主体名称 (UPN)。它们 IdPs 可能有一个包含用户真实电子邮件地址的辅助或 “其他” 电子邮件地址。您必须在 IdP 中配置 SCIM，以将非空唯一电子邮件地址映射到 IAM Identity Center 主电子邮件地址属性。并且您必须将用户的非空唯一登录标识符映射到 IAM Identity Center 用户名属性。检查您的 IdP 是否具有既是登录标识符又是用户电子邮件名称的单一值。如果是这样，您可以将该 IdP 字段映射到 IAM Identity Center 主电子邮件和 IAM Identity Center 用户名。
+ 要使 SCIM 同步起作用，必须为每个用户指定**名字**、**姓氏**、**用户名**和**显示名称**值。如果用户缺少这些值中的任何一个，则不会配置该用户。
+ 如果您需要使用第三方应用程序，则首先需要将出站 SAML 主题属性映射到用户名属性。如果第三方应用程序需要可路由的电子邮件地址，您必须向您的 IdP 提供电子邮件属性。
+ SCIM 预置和更新间隔由您的身份提供商控制。仅当您的身份提供商将这些更改发送到 IAM Identity Center 后，对身份提供商中的用户和组的更改才会反映在 IAM Identity Center 中。请咨询您的身份提供商，了解有关用户和组更新频率的详细信息。
+ 目前，SCIM 未配置多值属性（例如给定用户的多个电子邮件或电话号码）。尝试使用 SCIM 将多值属性同步到 IAM Identity Center 将失败。为了避免失败，请确保为每个属性仅传递一个值。如果您的用户具有多值属性，请删除或修改 IdP 处 SCIM 中的重复属性映射，以连接到 IAM Identity Center。
+ 验证 IdP 处的 `externalId` SCIM 映射是否对应于对您的用户而言唯一、始终存在且最不可能更改的值。例如，您的 IdP 可能会提供有保证的 `objectId` 或其他标识符，这些标识符不会受到姓名和电子邮件等用户属性更改的影响。如果是这样，您可以将该值映射到 SCIM `externalId` 字段。这样可以确保您的用户在需要更改姓名或电子邮件时不会丢失 AWS 授权、分配或权限。
+ 尚未分配到应用程序或 AWS 账户 无法配置到 IAM Identity Center 的用户。要同步用户和组，请确保将它们分配给代表您的 IdP 与 IAM Identity Center 连接的应用程序或其他设置。
+ 用户取消预置行为由身份提供者管理，可能因实现情况而异。请咨询相关身份提供者，了解有关用户取消预置的详细信息。
+ 为您的 IdP 设置 SCIM 自动预置后，您将无法再在 IAM Identity Center 控制台中添加或编辑用户。如果您需要添加或修改用户，必须从您的外部 IdP 或身份源执行此操作。

有关 IAM Identity Center SCIM 实施的更多信息，请参阅 [IAM Identity Center SCIM 实施开发人员指南](https://docs.aws.amazon.com/singlesignon/latest/developerguide/what-is-scim.html)。

## IdentityStore 通过 SCIM 配置访问 API
<a name="scim-identitystore-api-considerations"></a>

当您从外部 IdP 配置 SCIM 配置时，允许更改用户和群组成员资格的身份存储 API 仍可访问。管理账号和委托管理员账号中的委托人可以给他们打电话。

将这些 API 与 SCIM 一起使用是有充分理由的。例如，有些 IdPsGoogle Workspace不支持 SCIM 群组配置，要求您通过 Identity Store API [手动创建和管理群组](https://docs.aws.amazon.com/singlesignon/latest/userguide/gs-gwp.html)。其他用例包括快速禁用用户和在 IdP 同步之前预先配置群组。

**重要**  
如果您的组织不需要直接访问 API，请注意，在 SCIM-provisioned 目录上使用变更身份存储 API 可能会导致 IAM Identity Center 中的目录偏离您的外部 IdP。SCIM 同步对来自源 IdP 的增量进行操作。这意味着通过 API 所做的更改可能无法通过后续的 SCIM 同步进行更正。这可能导致：  
IAM Identity Center 中与您的外部 IdP 不匹配的用户或群组成员资格，打破了人们对 IdP 是单一事实来源的预期。
如果委托人将自己或其他人添加到授予 AWS 账户 或应用程序访问权限的群组中，则权限会意外升级。
审计和合规差距，因为针对外部 IdP 进行的权利审查可能无法反映中的实际访问状态。 AWS

如果要防止 API-based 变更，请将服务控制策略 (SCP) 附加到委派的管理员账户。请注意，SCP 不适用于管理账户本身。

以下示例 SCP 拒绝所有变更身份存储操作：

```
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "DenyIdentityStoreMutations",
      "Effect": "Deny",
      "Action": [
        "identitystore:Create*",
        "identitystore:Update*",
        "identitystore:Delete*"
      ],
      "Resource": "*"
    }
  ]
}
```

## 如何监控访问令牌过期
<a name="access-token-expiry"></a>

SCIM 访问令牌的生成有效期为一年。当您的 SCIM 访问令牌设置为 90 天或更短时间后到期时， AWS 会在 IAM Identity Center 控制台和控制 AWS Health 面板中向您发送提醒，以帮助您轮换令牌。通过在 SCIM 访问令牌过期之前进行轮换，您可以持续保护用户和组信息的自动预置。如果 SCIM 访问令牌过期，用户和组信息从身份提供商到 IAM Identity Center 的同步将停止，因此自动预置无法再进行更新或创建和删除信息。自动预置中断可能会增加安全风险并影响对服务的访问。

Identity Center 控制台提醒将持续存在，直到您轮换 SCIM 访问令牌并删除任何未使用或过期的访问令牌。 AWS Health 控制面板事件每周续订 90 到 60 天，每周更新两次，从 60 到 30 天，每周续订三次，从 30 到 15 天，每天续订 15 天，直到 SCIM 访问令牌到期。

## 手动预置
<a name="provision-manually"></a>

有些 IdPs 不支持 Cross-domain 身份管理系统 (SCIM)，或者SCIM实现不兼容。在这些情况下，您可以通过 IAM Identity Center 控制台手动配置用户。当您将用户添加到 IAM Identity Center 时，请确保将用户名设置为与 IdP 中的用户名相同。您至少必须拥有唯一的电子邮件地址和用户名。有关更多信息，请参阅 [用户名和电子邮件地址的唯一性](users-groups-provisioning.md#username-email-unique)。

您还必须在 IAM Identity Center 中手动管理所有组。为此，您需要创建组并使用 IAM Identity Center 控制台添加它们。这些组不需要与您的 IdP 中存在的组匹配。有关更多信息，请参阅 [组](users-groups-provisioning.md#groups-concept)。