本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
通过 Okta 和 IAM Identity Center 配置 SAML 和 SCIM
您可以使用跨域身份管理系统 (SCIM) v2.0 协议将用户和组信息从 Okta 自动预置(同步)到 IAM Identity Center。要在 Okta 中配置此连接,您可以使用 IAM Identity Center 的 SCIM 终端节点和 IAM Identity Center 自动创建的持有者令牌。配置 SCIM 同步时,您将在 Okta 中创建用户属性到 IAM Identity Center 中的命名属性的映射。此映射在 IAM Identity Center 和您的 Okta 之间匹配预期的用户属性。
Okta 通过 SCIM 连接到 IAM Identity Center 时支持以下预置功能:
-
创建用户——在 Okta 中分配给 IAM Identity Center 应用程序的用户是在 IAM Identity Center 中预置的。
-
更新用户属性——在 Okta 中分配给 IAM Identity Center 应用程序的用户的属性更改将在 IAM Identity Center 中更新。
-
停用用户——在 Okta 中从 IAM Identity Center 应用程序取消分配的用户将在 IAM Identity Center 被禁用。
-
组推送——Okta 中的组(及其成员)同步到 IAM Identity Center。
注意
为了最大限度地减少 Okta 和 IAM Identity Center 的管理开销,我们建议您分配和推送组而不是单个用户。
如果您尚未启用 IAM Identity Center,请参阅 启用 Amazon IAM Identity Center。
目标
在本教程中,您将逐步设置与 Okta IAM Identity Center 的 SAML 连接。稍后,您将使用 SCIM 从 Okta 同步用户。在该方案中,您可以管理 Okta 中的所有用户和组。用户通过 Okta 门户登录。要验证所有配置是否正确,完成配置步骤后,您将以Okta用户身份登录并验证对 Amazon 资源的访问权限。
注意
您可以注册安装了 Okta's IAM Identity Center 应用程序
在Okta和 IAM Identity Center 之间配置 SCIM 配置之前,我们建议您先进行审查使用自动预置的注意事项。
在开始之前,确认以下事项:
-
必须已为每位 Okta 用户指定名字、姓氏、用户名和显示名称值。
-
每位 Okta 用户的每个数据属性(如电子邮件地址或电话号码)只有一个值。任何具有多个值的用户都将无法同步。如果用户的属性中有多个值,请先删除重复的属性,然后再尝试在 IAM Identity Center 中预置用户。例如,只能同步一个电话号码属性,因为默认的电话号码属性是“工作电话”,所以即使用户的电话号码是家庭电话号码或移动电话号码,也将使用“工作电话”属性存储其电话号码。
-
如果您更新用户的地址,则必须指定街道地址、城市、州、邮政编码和国家/地区代码值。如果同步时未为 Okta 用户指定这些值中的任何一个,则不会预置该用户(或对用户的更改)。
注意
不支持权限和角色属性,也无法将其同步到 IAM Identity Center。
目前不支持使用相同的 Okta 组进行分配和组推送。要在 Okta 和 IAM Identity Center 之间保持一致的组成员资格,请创建一个单独的组并将其配置为将组推送到 IAM Identity Center。
-
登录 Okta admin dashboard,展开应用程序,然后选择应用程序。
-
在应用程序页面,选择浏览应用程序目录。
-
在搜索框中键入 Amazon IAM Identity Center,选择要添加 IAM Identity Center 应用程序的应用程序。
-
选择登录选项卡。
-
在 SAML 签名证书下,选择操作,然后选择查看 IdP 元数据。将打开一个新的浏览器选项卡,显示 XML 文件的文档树。选择从
<md:EntityDescriptor>
到</md:EntityDescriptor>
的所有 XML,将其复制到文本文件。 -
将文本文件保存为
metadata.xml
。
将 Okta admin dashboard 保持为打开状态,您将在后续步骤中继续使用该控制台。
-
以具有管理权限的用户身份打开 IAM Identity Center 控制台
。 -
在左侧导航窗格中,选择设置。
-
在设置页面,选择操作,然后选择更改身份源。
-
在选择身份来源 下,选择外部身份提供程序,然后选择下一步。
-
在配置外部身份提供商下,执行以下操作:
-
在服务提供商元数据下,选择下载元数据文件,以下载 IAM Identity Center 元数据文件,并将其保存在您的系统中。在本教程中,您稍后将向 Okta 提供 IAM Identity Center SAML 元数据文件。
将以下项目复制到文本文件,以便于访问:
-
IAM Identity Center 断言使用者服务 (ACS) URL
-
IAM Identity Center 发布者 URL
本教程稍后会用到这些值。
-
-
在 “身份提供者元数据” 下,在 IdP SAML 元数据下,选择 “选择文件”,然后选择您在上一步中创建的
metadata.xml
文件。 -
选择下一步。
-
-
阅读免责声明并准备继续操作后,输入 ACCEPT。
-
选择更改身份源。
保持 Amazon 控制台处于打开状态,下一步中您将继续使用该控制台。
-
返回 Okta admin dashboard,选择 Amazon IAM Identity Center 应用程序的登录选项卡,然后单击编辑。
-
在高级登录设置下,输入以下内容:
-
在 ACS URL 中,输入您复制的 IAM Identity Center 断言使用者服务 (ACS) URL 值
-
在发布者 URL 中,输入您复制的 IAM Identity Center 发布者 URL 值
-
在应用程序用户名格式中,选择下拉菜单中的一个选项。
确保您选择的值对每个用户来说都是唯一的。在本教程中,选择 Okta 用户名
-
-
选择保存。
现在,您可以在 IAM Identity Center 预置 Okta 的用户了。保持Okta admin dashboard打开状态,然后返回 IAM Identity Center 控制台进行下一步。
-
在 IAM Identity Center 控制台的设置页面,找到自动预置信息框,然后选择启用。这会在 IAM Identity Center 中启用自动预置,并显示必要的 SCIM 端点和访问令牌信息。
-
在入站自动预置对话框中,复制以下选项的各个值:
-
SCIM 端点
-
访问令牌
在本教程的后面部分,您将输入这些值来配置配置Okta。
-
-
选择关闭。
-
返回 Okta admin dashboard,移到 IAM Identity Center 应用程序。
-
在 IAM Identity Center 应用程序页面上,选择配置选项卡,然后在左侧导航栏的 “设置” 下选择集成。
-
选择 “编辑”,然后选中 “启用 API 集成” 旁边的复选框以启用配置。
-
使用您在本教程之前步骤中从 IAM Identity Center 复制的 SCIM 预置值,配置 Okta:
-
在基本 URL 字段,输入 SCIM 端点值。确保删除 URL 末尾的尾部正斜杠。
-
在 API 令牌字段,输入访问令牌值。
-
-
选择测试 API 凭证以验证输入的凭证是否有效。
将显示 Amazon IAM Identity Center 验证成功!消息。
-
选择保存。您将导航到 “设置” 区域,并选择 “集成”。
-
在 “设置” 下,选择 “至应用程序”,然后选中要启用的每项 “向应用程序预配” 功能对应的 “启用” 复选框。在本教程中,请选择所有选项。
-
选择保存。
现在,您可以将来自 Okta 的用户与 IAM Identity Center 同步了。
默认情况下,未将任何组或用户分配给您的 Okta IAM Identity Center 应用程序。通过预置组,该组的成员用户也会被预置。完成以下步骤,与 IAM Identity Center 同步组和用户。
-
在 OktaIAM Identity Center 应用程序页面中,选择任务选项卡。您可以将人员和组分配至 IAM Identity Center 应用程序。
-
要分配人员:
-
在分配页面,选择分配,然后选择分配给人员。
-
选择您想要为其分配 IAM Identity Center 应用程序访问权限的 Okta 用户。选择分配,选择保存并返回,然后选择完成。
这将启动将用户预置到 IAM Identity Center 的过程。
-
-
要分配组:
-
在分配页面,选择分配,然后选择分配给组。
-
选择您想要为其分配 IAM Identity Center 应用程序访问权限的 Okta 组。选择分配,选择保存并返回,然后选择完成。
这将启动将组中的用户预置到 IAM Identity Center 的过程。
注意
如果所有用户记录中都没有该组的属性,您可能需要为该组指定其他属性。为组指定的属性将覆盖任何单独属性的值。
-
-
-
选择推送组选项卡。选择包含您分配给 IAM Identity Center 应用程序的所有组的 Okta 组。选择保存。
将组及其成员推送到 IAM Identity Center 后,组状态将更改为活动。
-
返回分配选项卡。
-
如果有用户不属于您推送到 IAM Identity Center 的组,请使用以下步骤单独添加他们:
在分配页面,选择分配,然后选择分配给人员。
-
选择您想要为其分配 IAM Identity Center 应用程序访问权限的 Okta 用户。选择分配,选择保存并返回,然后选择完成。
这将启动将单个用户预置到 IAM Identity Center 的过程。
注意
您也可以从的应用程序页面为 Amazon IAM Identity Center 应用程序分配用户和群组Okta admin dashboard。要这样做,请选择设置图标,然后选择分配给用户或分配给组,然后指定用户或组。
-
返回 IAM Identity Center 控制台。在左侧导航栏中,选择用户,您应该会看到用户列表填入了您的 Okta 用户。
恭喜您!
您已成功在Okta和之间建立 SAML 连接, Amazon 并已验证自动配置正在运行。您现在可以在 IAM Identity Center 中将这些用户分配给账户和应用程序。在本教程的下一步,我们将指定一名用户,通过赋予其对管理账户的管理权限,使其成为 IAM Identity Center 管理员。
-
在 IAM Identity Center 导航窗格的多账户权限下,选择 Amazon Web Services 账户。
-
在 Amazon Web Services 账户 页面,组织结构将显示您的组织根目录,您的账户将以分层结构列于其下方。选中管理账户对应的复选框,然后选择分配用户或组。
-
此时将显示分配用户和组工作流程。它包括三个步骤:
-
对于步骤 1:选择用户和组,选择将要执行管理员工作职能的用户。然后选择下一步。
-
对于步骤 2:选择权限集,选择创建权限集,以打开新的标签页,它将引导您完成创建权限集所涉及的三个子步骤。
-
对于步骤 1:选择权限集类型,请完成以下操作:
-
在权限集类型中,选择预定义权限集。
-
在预定义权限集的策略中,选择AdministratorAccess。
选择下一步。
-
-
对于步骤 2:指定权限集详细信息,保留默认设置,并选择下一步。
默认设置会创建名为
AdministratorAccess
、会话持续时间设置为一小时的权限集。 -
对于步骤 3:查看并创建,请验证权限集类型是否使用 Amazon 托管策略AdministratorAccess。选择 创建。权限集页面会显示通知,告知您权限集已创建。您可以在网络浏览器中关闭此标签页。
在分配用户和组浏览器标签页,您仍处于步骤 2:选择权限集,您将在这里启动创建权限集工作流程。
在权限集区域,选择刷新按钮。您创建的
AdministratorAccess
权限集将出现在列表中。选择该权限集的复选框,然后选择下一步。 -
-
对于步骤 3:查看并提交,请查看选定的用户和权限集,然后选择提交。
页面更新时会显示一条消息,告知您 Amazon Web Services 账户 正在配置中。等待该过程完成。
您将返回到该 Amazon Web Services 账户 页面。系统会显示一条通知消息,告知您 Amazon Web Services 账户 已重新配置并应用了更新的权限集。当用户登录时,他们可以选择角色。
AdministratorAccess
注意
Okta 的 SCIM 的自动同步仅支持预置用户,无法自动预置组。您无法使用 Amazon Web Services Management Console为 Okta 用户创建组。预置用户后,您可以使用 CLI 或 API 操作创建组
-
-
使用测试用户账户登录 Okta dashboard。
-
在我的应用程序下,选择 Amazon IAM Identity Center 图标。
-
您已登录门户并可以看到该 Amazon Web Services 账户 图标。展开该图标可查看用户可以访问的 Amazon Web Services 账户 列表。在本教程中,您只使用了一个账户,因此展开图标只显示一个账户。
-
选择账户,以显示用户可用的权限集。在本教程中,您创建了AdministratorAccess权限集。
-
权限集旁边是该权限集可用访问权限类型的链接。创建权限集时,您指定了同时启用管理控制台和编程访问权限,因此存在这两个选项。选择管理控制台,打开 Amazon Web Services Management Console。
-
用户已登录到控制台。
您可以选择使用 IAM Identity Center 中的 访问控制属性 功能来传递 Name
属性设置为 https://aws.amazon.com/SAML/Attributes/AccessControl:
的 {TagKey}
Attribute
元素。此元素允许您将属性作为 SAML 断言中的会话标签传递。有关会话标签的更多信息,请参阅 IAM 用户指南在 Amazon STS中的传递会话标签。
要将属性作为会话标签传递,请包含指定标签值的 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
元素。
现在,您已在 IAM Identity Center 将 Okta 配置为身份提供商,并预置了用户,您可以:
-
授予访问权限 Amazon Web Services 账户,请参阅将用户访问权限分配给 Amazon Web Services 账户。
-
授予对云应用程序的访问权限,请参阅 在 IAM Identity Center 控制台中为用户分配应用程序的访问权限。
-
根据工作职能配置权限,请参阅创建权限集。