AWS IAM Identity Center 身份源入门(控制台)
AWS IAM Identity Center 身份源包含有关您的用户和组的信息。这对于设置用户上下文筛选非常有用,其中,Amazon Kendra 根据用户或用户组对文档的访问权限筛选不同用户的搜索结果。
要创建 IAM Identity Center 身份源,您必须激活 IAM Identity Center 并在 AWS Organizations 中创建一个组织。当您首次激活 IAM Identity Center 并创建组织时,它会自动默认将 Identity Center 目录作为身份源。您可以将其更改为 Active Directory(Amazon 托管或自管理)或外部身份提供商,以作为您的身份来源。您必须遵循正确的指导,请参阅更改 IAM Identity Center 身份来源。每个组织只能有一个身份源。
为了向用户和组分配不同级别的文档访问权限,在将文档提取到索引中时,您需要将您的用户和组包含在访问控制列表中。这允许您的用户和组根据其访问权限级别搜索 Amazon Kendra 中的文档。当您发出查询时,用户 ID 必须与 IAM Identity Center 中的用户名完全匹配。
您还必须授予 Amazon Kendra 使用 IAM Identity Center 所需的权限。有关更多信息,请参阅IAM Identity Center 的 IAM 角色。
设置 IAM Identity Center 身份源
-
选择启用 IAM Identity Center,然后选择创建 AWS 组织。
默认情况下会创建 Identity Center 目录,并向您发送一封电子邮件以验证与组织关联的电子邮件地址。
-
要向 AWS 组织添加组,请在导航窗格中选择组。
-
在组页面上,选择创建组并在对话框中输入组的名称和描述。选择创建。
-
要向组织添加用户,请在导航窗格中选择用户。
-
在 Users (用户) 页面上,选择 Add user (添加用户)。在用户详细信息下,指定所有必填字段。对于密码,选择向用户发送电子邮件。选择下一步。
-
要将用户添加到组,请选择组并选择一个组。
-
在详细信息页面上的组成员下,选择添加用户。
-
在向组添加用户页面上,选择要添加为组成员的用户。您可以选择多个用户以添加到组中。
-
要将您的用户和组列表与 IAM Identity Center 同步,请将您的身份源更改为 Active Directory 或外部身份提供商。
Identity Center 目录是默认的身份源,如果您没有让提供商管理自己的列表,则需要您使用此来源手动添加用户和组。要更改身份源,您必须按照正确的指导操作,请参阅更改 IAM Identity Center 身份源。
注意
如果使用 Active Directory 或外部身份提供商作为身份源,则在指定跨域身份管理系统(SCIM)协议时,必须将用户的电子邮件地址映射到 IAM Identity Center 用户名。有关更多信息,请参阅 SCIM 上有关启用 IAM Identity Center 的《IAM Identity Center 指南》。
设置 IAM Identity Center 身份源后,您可以在创建或编辑索引时在控制台中将其激活。转到索引设置中的用户访问控制并编辑您的设置,以允许从 IAM Identity Center 获取用户组信息。
您也可以使用 UserGroupResolutionConfiguration 对象激活 IAM Identity Center。您要提供 UserGroupResolutionMode 作为 AWS_SSO,并创建一个 IAM 角色,从而授予调用 sso:ListDirectoryAssociations、sso-directory:SearchUsers、sso-directory:ListGroupsForUser 和 sso-directory:DescribeGroups 的权限。
警告
对于您的 IAM Identity Center 身份源,Amazon Kendra 目前不支持使用具有 AWS 组织成员账户的 UserGroupResolutionConfiguration。您必须在组织的管理账户中创建索引才能使用 UserGroupResolutionConfiguration。
下面概述了如何设置数据来源 UserGroupResolutionConfiguration 和用户访问控制来根据用户上下文筛选搜索结果。这假定您已经创建了一个索引和一个索引的 IAM 角色。您可以使用 CreateIndex API 来创建索引并提供 IAM 角色。
使用 UserGroupResolutionConfiguration 和用户上下文筛选设置数据来源
-
创建授予访问 IAM Identity Center 身份源的权限的 IAM 角色。
-
通过将模式设置为
AWS_SSO来配置UserGroupResolutionConfiguration,然后调用 UpdateIndex 来更新您的索引以使用 IAM Identity Center。 -
当您调用
UpdateIndex时,如果您想使用基于令牌的用户访问控制,以便根据用户上下文筛选搜索结果,请将 UserContextPolicy 设置为USER_TOKEN。否则,Amazon Kendra 会爬取大多数数据来源连接器的每个文档的访问控制列表。您还可以通过在UserContext中提供用户和组信息,在查询 API 中根据用户上下文筛选搜索结果。您也可以使用 PutPrincipalMapping 将用户映射到他们的组,这样您只需在发出查询时提供用户 ID。 -
创建一个 IAM 角色,以授予访问数据来源的权限。
-
配置数据来源。您必须提供所需的连接信息以连接到您的数据来源。
-
使用 CreateDataSource API 创建数据来源。提供
DataSourceConfiguration对象,包括索引的 IDTemplateConfiguration、数据来源的 IAM 角色、数据来源类型,并为您的数据来源命名。您也可以更新您的数据来源。