

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

# PingFederate
<a name="pingfederate-idp"></a>

IAM Identity Center 支持通过 Ping Identity（以下简称“Ping”）将 PingFederate 产品中的用户和组信息自动预置（同步）到 IAM Identity Center。此预置使用跨域身份管理系统 (SCIM) v2.0 协议。有关更多信息，请参阅 [对外部身份提供者使用 SAML 和 SCIM 身份联合验证](other-idps.md)。

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

本指南基于 PingFederate version 10.2。其他版本的步骤可能有所不同。请联系 Ping，了解有关如何为其他版本的 PingFederate 预置 IAM Identity Center 的更多信息。

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

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

**Topics**
+ [先决条件](#pingfederate-prereqs)
+ [注意事项](#pingfederate-considerations)
+ [步骤 1：在 IAM Identity Center 中启用预置](#pingfederate-step1)
+ [步骤2：在 PingFederate 中配置预置](#pingfederate-step2)
+ [（可选）步骤 3：在 IAM Identity C PingFed enter 中按比例配置用户属性以进行访问控制](#pingfederate-step3)
+ [（可选）传递访问控制属性](#pingfederate-passing-abac)
+ [问题排查](#pingfederate-troubleshooting)

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

在开始之前，您将需要以下内容：
+ 一台正在运行的 PingFederate 服务器。如果您没有现有 PingFederate 服务器，您可以从[ Ping Identity](https://www.pingidentity.com/developer/en/get-started.html#:~:text=Get%20started%20developing%20with%20open,a%20developer%20trial%20of%20PingOne.) 网站获取免费试用版或开发人员帐户。该试用版包括许可证和软件下载以及相关文档。
+ 安装在您的 PingFederate 服务器上的 PingFederate IAM Identity Center 连接器软件的副本。有关如何获取该软件的更多信息，请参阅 Ping Identity 网站上的 [IAM Identity Center Connector](https://support.pingidentity.com/s/marketplace-integration/a7i1W000000TOZ1/)。
+ 支持 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)。
+ 从 PingFederate 实例到 IAM Identity Center 的 SAML 连接。有关如何配置此连接的说明，请参阅 PingFederate 文档。综上所述，推荐的路径是使用 IAM Identity Center Connector 在 PingFederate 中配置“浏览器 SSO”，利用两端的“下载”和“导入”元数据功能在 PingFederate 和 IAM Identity 之间交换 SAML 元数据 中心。
+ 如果您将 IAM Identity Center 复制到其他区域，则必须更新您的身份提供商配置以允许访问 AWS 托管应用程序和 AWS 账户 从这些区域访问托管应用程序。有关更多详细信息，请参阅[步骤 3：更新外部 IdP 设置](replicate-to-additional-region.md#update-external-idp-setup)。有关更多详细信息，请参阅PingFederate文档。

## 注意事项
<a name="pingfederate-considerations"></a>

以下是关于 PingFederate 的重要注意事项，它们可能会影响您使用 IAM Identity Center 实施预置的方式。
+ 如果从 PingFederate 中配置的数据存储中的用户删除某个属性（例如电话号码），则不会从 IAM Identity Center 中的相应用户中删除该属性。这是 PingFederate’s 置备程序实现中的一个已知限制。如果用户的属性更改为不同的（非空）值，则该更改将同步到 IAM Identity Center。

## 步骤 1：在 IAM Identity Center 中启用预置
<a name="pingfederate-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 控制台中设置了预置，您必须使用 PingFederate 管理控制台完成剩余任务。以下过程中描述了这些步骤。

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

在 PingFederate 管理控制台中使用以下过程启用 IAM Identity Center 和 IAM Identity Center 连接器之间的集成。此过程假设您已安装 IAM Identity Center Connector 软件。如果您尚未执行此操作，请参阅 [先决条件](#pingfederate-prereqs)，然后完成此过程来配置 SCIM 预置。

**重要**  
如果您的 PingFederate 服务器之前尚未针对出站 SCIM 配置进行配置，您可能需要更改配置文件才能启用预置。有关更多信息，请参阅 Ping 文档。总之，您必须将 **pingfederate-<version>/pingfederate/bin/run.properties** 文件中的 `pf.provisioner.mode` 设置修改为 `OFF`（默认值）以外的值，并重新启动服务器（如果当前正在运行）。例如，如果您当前没有 PingFederate 的高可用性配置，您可以选择使用 `STANDALONE`。

**要在 PingFederate 中配置预置**

1. 登录到 PingFederate 管理控制台。

1. 从页面顶部选择**应用程序**，然后单击 **SP 连接**。

1. 找到您之前创建的用于与 IAM Identity Center 形成 SAML 连接的应用程序，然后单击连接名称。

1. 从页面顶部附近的黑色导航标题中选择**连接类型**。您应该看到已从之前的 SAML 配置中选择了**浏览器 SSO**。如果没有，您必须先完成这些步骤才能继续。

1. 选中**出站预置**复选框，选择 **IAM Identity Center Cloud Connector** 作为类型，然后单击**保存**。如果 **IAM Identity Center Cloud Connector** 未显示为选项，请确保您已安装 IAM Identity Center Connector 并已重新启动 PingFederate 服务器。

1. 重复单击**下一步**，直到到达**出站预置**页面，然后单击**配置预置**按钮。

1. 在上一过程中，您复制了 IAM Identity Center 中的 **SCIM 端点**值。将该值粘贴到 PingFederate 控制台中的 **SCIM URL** 字段中。此外，在之前的过程中，您复制了 IAM Identity Center 中的**访问令牌**值。将该值粘贴到 PingFederate 控制台中的**访问令牌**字段中。单击**保存**。

1. 在**频道配置（配置频道）**页面上，单击**创建**。

1. 输入此新预置频道的**频道名称**（例如 **AWSIAMIdentityCenterchannel**），然后单击**下一步**。

1. 在**源**页面上，选择要用于连接到 IAM Identity Center 的**活动数据存储**，然后单击下一步。动数据存储，然后单击**下一步**。
**注意**  
如果您尚未配置数据来源，则必须立即配置。有关如何在 PingFederate 中选择和配置数据来源的信息，请参阅 Ping 产品文档。

1. 在**源设置**页面上，确认安装的所有值均正确，然后单击**下一步**。

1. 在**源位置**页面上，输入适合您的数据来源的设置，然后单击**下一步**。例如，如果使用 Active Directory 作为 LDAP 目录：

   1. 输入 AD 林的**基本 DN**（例如 **DC=myforest,DC=mydomain,DC=com**）。

   1. 在**用户 > 组 DN** 中，指定一个包含您要配置到 IAM Identity Center 的所有用户的组。如果不存在这样的单个组，请在 AD 中创建该组，返回到此设置，然后输入相应的 DN。

   1. 指定是否搜索子组（**嵌套搜索**）以及任何所需的 LDAP **筛选条件**。

   1. 在**组 > 组 DN** 中，指定一个组，其中包含您要配置到 IAM Identity Center 的所有组。在许多情况下，这可能与您在**用户**部分中指定的 DN 相同。根据需要输入**嵌套搜索**和**筛选条件**值。

1. 在**属性映射**页面上，确保满足以下条件，然后单击**下一步**：

   1. **userName** 字段必须映射到格式为电子邮件 (user@domain.com) 的**属性**。它还必须与用户用于登录 Ping 的值匹配。该值会在联合身份验证期间填充到 SAML `nameId` 声明中，并用于匹配 IAM Identity Center 中的用户。例如，当使用 Active Directory 时，您可以选择指定 `UserPrincipalName` 作为**用户名**。

   1. 其他以 **\$1** 为后缀的字段必须映射到对您的用户来说非空的属性。

1. 在**激活和摘要**页面上，将**频道状态**设置为**活动**，以便在保存配置后立即开始同步。

1. 确认页面上的所有配置值均正确，然后单击**完成**。

1. 在**管理频道**页面上，单击**保存**。

1. 此时，预置开始了。要确认活动，您可以查看 **Provisioner.log** 文件，该文件默认位于 PingFederate 服务器上的 **pingfederate-<version>/pingfederate/log** 目录中。

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

## （可选）步骤 3：在 IAM Identity C PingFed enter 中按比例配置用户属性以进行访问控制
<a name="pingfederate-step3"></a>

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

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

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

1. 登录到 PingFederate 管理控制台。

1. 从页面顶部选择**应用程序**，然后单击**SP 连接**。

1. 找到您之前创建的用于与 IAM Identity Center 形成 SAML 连接的应用程序，然后单击连接名称。

1. 从页面顶部附近的深色导航标题中选择**浏览器 SSO**。然后单击**配置浏览器 SSO**。

1. 在**配置浏览器 SSO**页上，选择**断言创建**，然后单击**配置断言创建**。

1. 在**配置断言创建**页上，选择**属性合同**。

1. 在**属性合同**页面的**延长合同**部分下，通过执行以下步骤添加新属性：

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

   1. 对于**属性名称格式**，选择 **urn:oasis:names:tc:SAML:2.0:attrname-format:uri**。

   1. 选择**添加**，然后选择**下一步**。

1. 在**身份验证源映射**页面上，选择使用您的应用程序配置的适配器实例。

1. 在**属性合同履行**页面上，选择**属性合同** `https://aws.amazon.com/SAML/Attributes/AccessControl:Department` 的**源**（*数据存储*）和**值**（*数据存储属性*）。
**注意**  
如果您尚未配置数据源，则需要立即进行配置。有关如何在 PingFederate 中选择和配置数据来源的信息，请参阅 Ping 产品文档。

1. 重复单击**下一步**，直到进入**激活和摘要**页面，然后单击**保存**。

## （可选）传递访问控制属性
<a name="pingfederate-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="pingfederate-troubleshooting"></a>

有关使用 PingFederate 对 SCIM 和 SAML 进行一般性问题排查，请参阅以下各部分：
+ [特定用户无法从外部 SCIM 提供商同步到 IAM Identity Center](troubleshooting.md#issue2)
+ [与 IAM Identity Center 创建的 SAML 断言内容有关的问题](troubleshooting.md#issue1)
+ [使用外部身份提供者预置用户或组时出现重复用户或组错误](troubleshooting.md#duplicate-user-group-idp)
+ 有关 PingFederate 的更多信息，请参阅 [PingFederate 文档](https://docs.pingidentity.com/pingfederate/latest/pf_pf_landing_page.html)。

以下资源可以帮助您在使用时进行故障排除 AWS：
+ [AWS re:Post](https://repost.aws/)-查找 FAQs 并链接到其他资源以帮助您解决问题。
+ [AWS 支持](https://aws.amazon.com/premiumsupport/) – 获得技术支持