教程:配置 AWS IAM 标识中心以自动预配用户

本教程介绍需要在 AWS IAM 标识中心(AWS 单一登录的后继者)和 Microsoft Entra ID 中执行以配置自动用户预配的步骤。 配置后,Microsoft Entra ID 会使用 Microsoft Entra 预配服务自动将用户和组预配到 AWS IAM 标识中心 以及取消预配。 有关此服务的功能、工作原理以及常见问题的重要详细信息,请参阅使用 Microsoft Entra ID 自动将用户预配到 SaaS 应用程序和取消预配

支持的功能

  • 在 AWS IAM 标识中心创建用户
  • 当用户不再需要访问权限时,删除 AWS IAM 标识中心中的用户
  • 使用户属性在 Microsoft Entra ID 和 AWS IAM 标识中心之间保持同步。
  • 在 AWS IAM 标识中心中预配组和组成员身份
  • IAM 标识中心到 AWS IAM 标识中心

先决条件

本教程中概述的方案假定你已具有以下先决条件:

步骤 1:规划预配部署

  1. 了解预配服务的工作原理
  2. 决定谁在预配范围中。
  3. 确定要在 Microsoft Entra ID 与 AWS IAM 标识中心之间映射的数据。

步骤 2:配置 AWS IAM 标识中心以支持通过 Microsoft Entra ID 进行预配

  1. 打开 AWS IAM 标识中心

  2. 在左侧导航窗格中选择“设置”

  3. 在“设置”中,单击“自动预配”部分中的“启用”。

    启用自动预配的屏幕截图。

  4. 在“入站自动预配”对话框中,复制并保存“SCIM 终结点”和“访问令牌”(单击“显示令牌”后可见)。 在 AWS IAM 标识中心应用程序的“预配”选项卡中,将这些值输入“租户 URL”和“机密令牌”字段提取预配配置的屏幕截图。

从 Microsoft Entra 应用程序库添加 AWS IAM 标识中心以开始管理对 AWS IAM 标识中心的预配。 如果之前为 AWS IAM 标识中心设置过 SSO,则可使用同一应用程序。 若要详细了解如何从库中添加应用,可以单击此处

步骤 4:定义谁在预配范围内

借助 Microsoft Entra 预配服务,可根据对应用程序的分配和/或用户/组的属性来限定谁在预配范围内。 如果选择根据分配来限定要将谁预配到应用,可按照以下步骤将用户和组分配到应用程序。 如果选择仅根据用户或组的属性来限定要对谁进行预配,可使用此处所述的范围筛选器。

  • 先小部分测试。 在向全员推出之前,请先使用少量的用户和组进行测试。 如果预配范围设置为分配的用户和组,则可以先尝试将一两个用户或组分配到应用。 当预配范围设置为所有用户和组时,可以指定基于属性的范围筛选器

  • 如果你需要其他角色,可以更新应用程序清单以添加新角色。

步骤 5:为 AWS IAM 标识中心配置自动用户预配

本部分逐步介绍了如何配置 Microsoft Entra 预配服务,以根据 Microsoft Entra ID 中的用户和/或组分配在 TestApp 中创建、更新和禁用用户和/或组。

若要在 Microsoft Entra ID 中为 AWS IAM 标识中心配置自动用户预配,请执行以下操作:

  1. 至少以云应用程序管理员身份登录到 Microsoft Entra 管理中心

  2. 浏览到“标识”>“应用程序”>“企业应用程序”

    “企业应用程序”边栏选项卡

  3. 在应用程序列表中,选择“AWS IAM 标识中心”。

    “应用程序”列表中的 AWS IAM 标识中心链接的屏幕截图。

  4. 选择“预配”选项卡。

    “预配”选项卡

  5. 将“预配模式”设置为“自动”。

    “预配”选项卡“自动”

  6. 在“管理员凭据”部分下,输入之前在步骤 2 中检索到的 AWS IAM 标识中心的“租户 URL”和“机密令牌”。 单击“测试连接”,以确保 Microsoft Entra ID 可以连接到 AWS IAM 标识中心。

    令牌

  7. 在“通知电子邮件”字段中,输入应接收预配错误通知的个人或组的电子邮件地址,并选中“发生故障时发送电子邮件通知”复选框 。

    通知电子邮件

  8. 选择“保存”。

  9. 在“映射”部分下,选择“将 Microsoft Entra 用户同步到 AWS IAM 标识中心”。

  10. 在“属性映射”部分中,查看从 Microsoft Entra ID 同步到 AWS IAM 标识中心的用户属性。 选为“匹配”属性的特性用于匹配 AWS IAM 标识中心中的用户帐户以执行更新操作。 如果选择更改匹配目标特性,则需要确保 AWS IAM 标识中心 API 支持基于该特性筛选用户。 选择“保存”按钮以提交任何更改。

    Attribute 类型 支持筛选
    userName 字符串
    活动 Boolean
    displayName 字符串
    title 字符串
    emails[type eq "work"].value 字符串
    preferredLanguage 字符串
    name.givenName 字符串
    name.familyName 字符串
    name.formatted 字符串
    addresses[type eq "work"].formatted 字符串
    addresses[type eq "work"].streetAddress 字符串
    addresses[type eq "work"].locality 字符串
    addresses[type eq "work"].region 字符串
    addresses[type eq "work"].postalCode 字符串
    addresses[type eq "work"].country 字符串
    phoneNumbers[type eq "work"].value 字符串
    externalId 字符串
    区域设置 字符串
    timezone 字符串
    urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:employeeNumber 字符串
    urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:department 字符串
    urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:division 字符串
    urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:costCenter 字符串
    urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:organization 字符串
    urn:ietf:params:scim:schemas:extension:enterprise:2.0:User:manager 参考
  11. 在“映射”部分下,选择“将 Microsoft Entra 组同步到 AWS IAM 标识中心”。

  12. 在“属性映射”部分中,查看从 Microsoft Entra ID 同步到 AWS IAM 标识中心的组属性。 选为“匹配”属性的特性用于匹配 AWS IAM 标识中心中的组以执行更新操作。 选择“保存”按钮以提交任何更改。

    Attribute 类型 支持筛选
    displayName 字符串
    externalId 字符串
    members 参考
  13. 若要配置范围筛选器,请参阅范围筛选器教程中提供的以下说明。

  14. 若要为 AWS IAM 标识中心启用 Microsoft Entra 预配服务,请在“设置”部分中将“预配状态”更改为“启用”。

    预配状态已打开

  15. 通过在“设置”部分的“范围”中选择所需的值,定义要预配到 AWS IAM 标识中心的用户和/或组。

    预配范围

  16. 在已准备好预配时,请单击“保存”。

    保存预配配置

此操作会对“设置”部分的“范围”中定义的所有用户和组启动初始同步周期 。 初始周期执行的时间比后续周期长,只要 Microsoft Entra 预配服务正在运行,后续周期大约每 40 分钟就会进行一次。

步骤 6:监视部署

配置预配后,请使用以下资源来监视部署:

  1. 使用预配日志来确定哪些用户已预配成功或失败
  2. 检查进度栏来查看预配周期的状态以及完成进度
  3. 如果怀疑预配配置处于非正常状态,则应用程序将进入隔离状态。 可在此处了解有关隔离状态的详细信息。

使用 PIM 对组进行实时 (JIT) 应用程序访问

使用 PIM for Groups,您可以提供对 Amazon Web Services 中组的实时访问,并减少对 AWS 中特权组具有永久访问权限的用户数。

为企业应用程序配置 SSO 和预配

  1. 将 AWS IAM 标识中心添加到租户,按照上述教程中所述对其进行配置,然后开始预配。
  2. 为 AWS IAM 标识中心配置单一登录
  3. 创建一个组,该将为所有用户提供对应用程序的访问权限。
  4. 将组分配到 AWS 标识中心应用程序。
  5. 将测试用户分配为在上一步中创建的组的直接成员,或通过访问包向他们提供对组的访问权限。 此组可用于 AWS 中的持久性非管理员访问。

为组启用 PIM

  1. 在 Microsoft Entra ID 中创建第二个组。 此组将提供对 AWS 中管理员权限的访问权限。
  2. 将该组置于 Microsoft Entra PIM 中的管理之下。
  3. 将测试用户分配为符合 PIM 中组的条件,并将角色设置为成员。
  4. 将第二个组分配给 AWS IAM 标识中心应用程序。
  5. 使用按需预配在 AWS IAM 标识中心中创建组。
  6. 登录到 AWS IAM 标识中心,并为第二组分配执行管理任务所需的权限。

现在,任何符合 PIM 中组条件的最终用户都可以通过激活其组成员身份来获取对 AWS 中组的 JIT 访问权限。

重要注意事项

  • 将用户预配到应用程序需要多长时间?:
    • 如果用户被添加到 Microsoft Entra ID 中的组,但未使用 Microsoft Entra ID Privileged Identity Management (PIM) 激活其组成员身份:
      • 组成员身份在下一个同步周期期间在应用程序中进行配置。 同步周期每 40 分钟运行一次。
    • 如果用户在 Microsoft Entra ID PIM 中激活了其组成员身份:
      • 组成员身份将在 2-10 分钟内预配完毕。 当同时存在多个较高速率的请求时,请求的速率将限制为每 10 秒 5 个请求。
      • 对于在 10 秒内针对特定应用程序激活其组成员身份的前 5 个用户,将在 2-10 分钟内在该应用程序中预配其组成员身份。
      • 对于在 10 秒内针对特定应用程序激活其组成员身份的第六个及以更后面的用户,将在下一个同步周期为其向该应用程序预配组成员身份。 同步周期每 40 分钟运行一次。 限制是针对每个企业应用程序的。
  • 如果用户无法访问 AWS 中的必要组,请查看下面的故障排除提示、PIM 日志和预配日志,以确保已成功更新组成员身份。 根据目标应用程序的架构方式,组成员身份可能需要额外的时间才能在应用程序中生效。
  • 可以使用 Azure Monitor 创建故障警报。
  • 停用是在常规增量周期内完成的。 它不会通过按需预配立即进行处理。

故障排查提示

缺少属性

将用户预配到 AWS 时,该用户需要具有以下属性

  • firstName
  • lastName
  • displayName
  • userName

没有这些属性的用户会发生故障并出现以下错误

errorcode

多值属性

AWS 不支持以下多值属性:

  • 电子邮件
  • 电话号码

尝试将上述属性作为多值属性运行会生成以下错误消息

errorcode2

可通过两种方法来解决此问题

  1. 确保用户的 phoneNumber/email 只有一个值
  2. 删除重复的属性。 例如,将两个不同的属性从 Microsoft Entra ID 映射到 AWS 端的“phoneNumber___”时,如果两个属性在 Microsoft Entra ID 中都有值,则会导致错误。 只让一个属性映射到“phoneNumber____”属性就会解决此错误。

无效字符

目前,AWS IAM 标识中心不允许使用 Microsoft Entra ID 支持的一些其他字符,例如制表符 (\t)、换行符 (\n)、回车 (\r) 以及“<|>|;|:%”等字符。

如需更多故障排除提示,你还可以查看此处提供的 AWS IAM 标识中心故障排除提示

其他资源

后续步骤