

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

# 在 OneLogin 和 IAM Identity Center 之间设置 SCIM 预置
<a name="onelogin-idp"></a>

IAM Identity Center 支持使用跨域身份管理系统 (SCIM) v2.0 协议将用户和组信息从 OneLogin 自动预置（同步）到 IAM Identity Center。有关更多信息，请参阅 [对外部身份提供者使用 SAML 和 SCIM 身份联合验证](other-idps.md)。

**注意**  
OneLogin目前不支持应用程序 URLs中的 SAML 多重断言使用服务 (ACS)。 AWS IAM Identity Center 要充分利用 IAM Identity Center 中的[多区域支持](multi-region-iam-identity-center.md)，必须使用此 SAML 功能。如果您计划将 IAM Identity Center 复制到其他区域，请注意，使用单个 ACS URL 可能会影响这些其他区域的用户体验。您的主要区域将继续正常运行。我们建议您与 IdP 供应商合作以启用此功能。有关使用单个 ACS URL 在其他区域的用户体验的更多信息，请参阅[使用没有多个 ACS 的 AWS 托管应用程序 URLs](multi-region-workforce-access.md#aws-app-use-without-multiple-acs-urls)和[AWS 账户 无需多个 ACS 即可实现访问弹性 URLs](multi-region-failover.md#account-access-resiliency-without-multiple-acs-url)。

您可以在 OneLogin 中使用 IAM Identity Center 的 SCIM 端点和 IAM Identity Center 自动创建的持有者令牌来配置此连接。配置 SCIM 同步时，您将在 OneLogin 中创建用户属性到 IAM Identity Center 中的命名属性的映射。这会导致 IAM Identity Center 和 OneLogin 之间的预期属性匹配。

以下步骤将引导您了解如何使用 SCIM 协议将用户和组从 OneLogin 自动预置到 IAM Identity Center。

**注意**  
在开始部署 SCIM 之前，我们建议您首先查看 [使用自动预置的注意事项](provision-automatically.md#auto-provisioning-considerations)。

**Topics**
+ [先决条件](#onelogin-prereqs)
+ [步骤 1：在 IAM Identity Center 中启用预置](#onelogin-step1)
+ [步骤2：在 OneLogin 中配置预置](#onelogin-step2)
+ [（可选）第三步：在 OneLogin IAM Identity Center 中配置用户属性进行访问控制](#onelogin-step3)
+ [（可选）传递访问控制属性](#onelogin-passing-abac)
+ [问题排查](#onelogin-troubleshooting)

## 先决条件
<a name="onelogin-prereqs"></a>

在开始之前，您将需要以下内容：
+ 一个 OneLogin 帐户。如果您没有现有帐户，您可以从 [OneLogin 网站](https://www.onelogin.com/free-trial)获取免费试用版或开发者帐户。
+ 支持 IAM Identity Center 的帐户（[免费](https://aws.amazon.com/single-sign-on/)）。有关更多信息，请参阅[启用 IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/setup-enable-idc.html)。
+ 从您的 OneLogin 帐户到 IAM Identity Center 的 SAML 连接。有关详细信息，请参阅 AWS 合作伙伴网络博客上的在 OneLogin 和 AWS之间[启用单点登录](https://aws.amazon.com/blogs/apn/enabling-single-sign-on-between-onelogin-and-aws/)。

## 步骤 1：在 IAM Identity Center 中启用预置
<a name="onelogin-step1"></a>

在第一步中，您使用 IAM Identity Center 控制台启用自动预置。

**在 IAM Identity Center 中启用自动预置**

1. 完成先决条件后，打开 [IAM Identity Center 控制台](https://console.aws.amazon.com/singlesignon)。

1. 在左侧导航窗格中选择**设置**。

1. 在**设置**页面上，找到**自动预置**信息框，然后选择**启用**。这会立即在 IAM Identity Center 中启用自动预置，并显示必要的 SCIM 端点和访问令牌信息。

1. 在**入站自动预置**对话框中，复制 SCIM 端点和访问令牌。稍后在 IdP 中配置预置时，您需要粘贴这些内容。

   1. **SCIM 端点** ——例如，https://scim。 *us-east-2*.amazonaws.com/ /scim/v2 *11111111111-2222-3333-4444-555555555555*

   1. **访问令牌** - 选择**显示令牌**以复制该值。
**警告**  
这是唯一可以获取 SCIM 端点与访问令牌的机会。在继续操作之前，务必复制这些值。本教程的后续步骤需要输入这些值，以便在 IdP 中配置自动预置。

1. 选择**关闭**。

您现在已在 IAM Identity Center 控制台中设置预置。现在，您需要使用 OneLogin 管理控制台执行其余任务，如以下过程中所述。

## 步骤2：在 OneLogin 中配置预置
<a name="onelogin-step2"></a>

在 OneLogin 管理控制台中使用以下过程来启用 IAM Identity Center 和 IAM Identity Center 应用程序之间的集成。此过程假设您已经在中配置了 AWS 单点登录应用程序OneLogin以进行 SAML 身份验证。如果您尚未创建此 SAML 连接，请在继续之前创建此连接，然后返回此处完成 SCIM 预置过程。有关使用 OneLogin 配置 SAML 的更多信息，请参阅 AWS 合作伙伴网络博客上的在 OneLogin 和 AWS之间[启用单点登录](https://aws.amazon.com/blogs/apn/enabling-single-sign-on-between-onelogin-and-aws/)。

**要在 OneLogin 中配置预置**

1. 登录 OneLogin，然后导航至**应用程序>应用程序**。

1. 在**应用程序**页面上，搜索您之前创建的应用程序以与 IAM Identity Center 形成 SAML 连接。选择它，然后从导航栏中选择**配置**。

1. 在上一过程中，您复制了 IAM Identity Center 中的 **SCIM 端点**值。将该值粘贴到 OneLogin 中的 **SCIM Base URL** 字段中。此外，在之前的过程中，您复制了 IAM Identity Center 中的**访问令牌**值。将该值粘贴到 OneLogin 中的 **SCIM 持有者令牌**字段中。

1. 在**API 连接**旁边，单击**启用**，然后单击**保存**以完成配置。

1. 在导航窗格中，选择 **Provisioning**（预调配）。

1. 选中**启用预置**、**创建用户**、**删除用户**和**更新用户**复选框，然后选择**保存**。

1. 在导航窗格中，选择 **Users**（用户）。

1. 单击**更多操作**，然后选择**同步登录**。您应该收到消息*正在使用 AWS 单点登录同步用户*。

1. 再次单击**更多操作**，然后选择**重新应用权限映射**。您应该会收到消息*映射正在重新应用*。

1. 此时，预置过程应该开始。要确认这一点，请导航至**活动>事件**，并监控进度。成功的预置事件以及错误应该出现在事件流中。

1. 要验证您的用户和组是否已全部成功同步到 IAM Identity Center，请返回 IAM Identity Center 控制台并选择**用户**。您从 OneLogin 同步的用户出现在**用户**页面上。您还可以在**组**页面查看已同步的组。

1. 要将用户更改自动同步到 IAM Identity Center，请导航到**配置**页面，找到 “**执行此操作之前需要管理员批准**” 部分，取消选择 “**创建用户”、“删除用户****”、“ and/or **更新用户****”，然后单击 “**保存**”。

## （可选）第三步：在 OneLogin IAM Identity Center 中配置用户属性进行访问控制
<a name="onelogin-step3"></a>

OneLogin如果您选择配置将在 IAM Identity Center 中使用的属性来管理对 AWS 资源的访问权限，则这是一个可选过程。您在 OneLogin 中定义的属性将在 SAML 断言中传递到 IAM Identity Center。然后，您将在 IAM Identity Center 中创建一个权限集，以根据您从 OneLogin 传递的属性来管理访问。

在开始此过程之前，您必须首先启用 [访问控制属性](attributesforaccesscontrol.md) 功能。有关此操作的详细信息，请参阅 [启用并配置访问控制属性](configure-abac.md)。

**要在 OneLogin 中配置用户属性，用于 IAM Identity Center 的访问控制**

1. 登录 OneLogin，然后导航至**应用程序>应用程序**。

1. 在**应用程序**页面上，搜索您之前创建的应用程序以与 IAM Identity Center 形成 SAML 连接。选择它，然后从导航栏中选择**参数**。

1. 在**必需参数**部分中，对您要在 IAM Identity Center 中使用的每个属性执行以下操作：

   1. 选择 **\$1**。

   1. 在**字段名称**中，输入 `https://aws.amazon.com/SAML/Attributes/AccessControl:AttributeName`，并将 **AttributeName** 替换为您在 IAM Identity Center 中期望的属性名称。例如 `https://aws.amazon.com/SAML/Attributes/AccessControl:Department`。

   1. 在**标志**下，选中**包含在 SAML 断言中**旁边的框，然后选择**保存**。

   1. 在**值**字段中，使用下拉列表选择 OneLogin 用户属性。例如，**部门**。

1. 选择**保存**。

## （可选）传递访问控制属性
<a name="onelogin-passing-abac"></a>

您可以选择使用 IAM Identity Center 中的 [访问控制属性](attributesforaccesscontrol.md) 功能来传递 `Name` 属性设置为 `https://aws.amazon.com/SAML/Attributes/AccessControl:{TagKey}` 的 `Attribute` 元素。此元素允许您将属性作为 SAML 断言中的会话标签传递。有关会话标签的更多信息，请参阅 *IAM 用户指南*在 AWS STS中的[传递会话标签](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html)。

要将属性作为会话标签传递，请包含指定标签值的 `AttributeValue` 元素。例如，要传递标签键值对`CostCenter = blue`，请使用以下属性。

```
<saml:AttributeStatement>
<saml:Attribute Name="https://aws.amazon.com/SAML/Attributes/AccessControl:CostCenter">
<saml:AttributeValue>blue
</saml:AttributeValue>
</saml:Attribute>
</saml:AttributeStatement>
```

如果您需要添加多个属性，请为每个标签包含一个单独的 `Attribute` 元素。

## 问题排查
<a name="onelogin-troubleshooting"></a>

以下内容可以帮助您解决在使用 OneLogin 设置自动预置时可能遇到的一些常见问题。

**组未配置到 IAM Identity Center**

默认情况下，组可能无法从 OneLogin 配置到 IAM Identity Center。确保您已在 OneLogin 中为 IAM Identity Center 应用程序启用组预置。为此，请登录 OneLogin 管理控制台，并检查以确保在 IAM Identity Center 应用程序的属性（**IAM Identity Center 应用程序 > 参数 > 组**）下选择了**包含在用户预置**中选项。有关如何在 OneLogin 中创建组的更多详细信息，包括如何在 SCIM 中将 OneLogin 角色同步为组，请参阅 [OneLogin 网站](https://onelogin.service-now.com/support)。

**尽管所有设置均正确，但没有任何内容从 OneLogin 同步到 IAM Identity Center**

除了上面有关管理员批准的注释之外，您还需要**重新应用权限映射**才能使许多配置更改生效。这可以在应用程序 > **应用程序 > IAM Identity Center 应用程序 > 更多操作中找到**。您可以在 OneLogin 中查看大多数操作的详细信息和日志，包括**活动 > 事件**下的同步事件。

**我已删除或禁用 OneLogin 中的一个组，但它仍然出现在 IAM Identity Center 中**

OneLogin 目前不支持组的 SCIM DELETE 操作，这意味着该组继续存在于 IAM Identity Center 中。因此，您必须直接从 IAM Identity Center 中删除该组，以确保删除 IAM Identity Center 中该组的任何相应权限。

**我在 IAM Identity Center 中删除了一个群组，但没有先将其从中OneLogin删除，现在我遇到了 user/group 同步问题**

要解决这种情况，首先确保您没有 OneLogin 中的任何冗余组预置规则或配置。例如，直接分配给应用程序的组以及发布到同一组的规则。接下来，删除 IAM Identity Center 中任何不需要的组。最后，在 OneLogin 中，**刷新**权限（**IAM Identity Center 应用程序 > 预置 > 权限**），然后**重新应用权限映射（IAM Identity Center 应用程序 > 更多操作）**。为了避免将来出现此问题，请首先进行更改以停止预置 OneLogin 中的组，然后从 IAM Identity Center 中删除该组。