本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
先决条件
以下步骤是入门练习的先决条件。这些步骤向您展示了如何设置账户、创建 Amazon Kendra 允许代表您拨打电话的 IAM 角色以及如何为 Amazon S3 存储桶中的文档编制索引。我们以 S3 存储桶为例,但您可以使用其他 Amazon Kendra 支持的数据来源。选择数据来源。
注册获取 AWS 账户
如果您没有 AWS 账户,请完成以下步骤来创建一个。
报名参加 AWS 账户
打开https://portal.aws.amazon.com/billing/注册。
按照屏幕上的说明进行操作。
在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。
当您注册时 AWS 账户,就会创建AWS 账户根用户一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务。
AWS 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 https://aws.amazon.com/
创建具有管理访问权限的用户
注册后,请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center,启用并创建管理用户,这样您就不会使用 root 用户执行日常任务。
保护你的 AWS 账户根用户
-
选择 Root 用户并输入您的 AWS 账户 电子邮件地址,以账户所有者的身份登录。AWS Management Console
在下一页上,输入您的密码。 要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的以根用户身份登录。
-
为您的 root 用户开启多重身份验证 (MFA)。
有关说明,请参阅《用户指南》中的 “为 AWS 账户 root 用户(控制台)启用虚拟MFA设备” IAM。
创建具有管理访问权限的用户
-
启用 “IAM身份中心”。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的启用 AWS IAM Identity Center。
-
在 IAM Identity Center 中,向用户授予管理访问权限。
有关使用 IAM Identity Center 目录 作为身份源的教程,请参阅《用户指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户访问权限。
以具有管理访问权限的用户身份登录
-
要使用您的 Ident IAM ity Center 用户登录URL,请使用您在创建 Ident IAM ity Center 用户时发送到您的电子邮件地址的登录信息。
有关使用 Ident IAM ity Center 用户登录的帮助,请参阅AWS 登录 用户指南中的登录 AWS 访问门户。
将访问权限分配给其他用户
-
如果您使用的是包含要测试的文档的 S3 存储桶 Amazon Kendra,请在您使用的同一区域创建一个 S3 存储桶 Amazon Kendra。有关说明,请参阅 《Amazon Simple Storage Service 用户指南》中的创建和配置 S3 存储桶。
将您的文档上载到 S3 存储桶。有关说明,请参阅《Amazon Simple Storage Service 用户指南》中的上传、下载和管理对象。
如果您使用的是其他数据来源,则必须具有活动站点和凭证才能连接到该数据来源。
如果您使用控制台来开始使用,请从 Amazon Kendra 控制台入门 开始。
Amazon Kendra 资源: AWS CLI,SDK, 控制台
如果您使用CLI、或控制台SDK,则需要某些权限。
要用 Amazon Kendra 于CLISDK、或控制台,您必须拥有 Amazon Kendra 允许代表您创建和管理资源的权限。根据您的用例,如果您想与搜索体验集成 AWS IAM Identity Center 或创建搜索体验, AWS KMS keys 则这些权限包括对 Amazon Kendra API自身的访问权限CMK,如果您想通过自定义的 Identity Center 目录加密数据。有关不同使用案例的完整权限列表,请参阅 IAM 角色。
首先,您必须将以下权限授予您的IAM用户。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt1644430853544", "Action": [ "kms:CreateGrant", "kms:DescribeKey" ], "Effect": "Allow", "Resource": "*" }, { "Sid": "Stmt1644430878150", "Action": "kendra:*", "Effect": "Allow", "Resource": "*" }, { "Sid": "Stmt1644430973706", "Action": [ "sso:AssociateProfile", "sso:CreateManagedApplicationInstance", "sso:DeleteManagedApplicationInstance", "sso:DisassociateProfile", "sso:GetManagedApplicationInstance", "sso:GetProfile", "sso:ListDirectoryAssociations", "sso:ListProfileAssociations", "sso:ListProfiles" ], "Effect": "Allow", "Resource": "*" }, { "Sid": "Stmt1644430999558", "Action": [ "sso-directory:DescribeGroup", "sso-directory:DescribeGroups", "sso-directory:DescribeUser", "sso-directory:DescribeUsers" ], "Effect": "Allow", "Resource": "*" }, { "Sid": "Stmt1644431025960", "Action": [ "identitystore:DescribeGroup", "identitystore:DescribeUser", "identitystore:ListGroups", "identitystore:ListUsers" ], "Effect": "Allow", "Resource": "*" } ] }
其次,如果您使用CLI或SDK,则还必须创建要访问的 IAM 角色和策略 Amazon CloudWatch Logs。如果您使用的是控制台,则无需为此创建 IAM 角色和策略。您可以将其作为控制台过程的一部分创建。
为和创建允许 Amazon Kendra 访问您的 IAM 角色 AWS CLI 和SDK策略 Amazon CloudWatch Logs。
登录 AWS Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/
。 -
在左侧菜单中,选择策略,然后选择创建策略。
-
选择默认策略,JSON然后将其替换为以下内容:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "AWS/Kendra" } } }, { "Effect": "Allow", "Action": [ "logs:DescribeLogGroups" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "logs:CreateLogGroup" ], "Resource": [ "arn:aws:logs:
region
:account ID
:log-group:/aws/kendra/*" ] }, { "Effect": "Allow", "Action": [ "logs:DescribeLogStreams", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region
:account ID
:log-group:/aws/kendra/*:log-stream:*" ] } ] } -
选择查看策略。
-
为策略命名 "KendraPolicyForGettingStartedIndex" 然后选择创建策略。
-
在左侧菜单中,选择角色,然后选择创建角色。
-
选择 “其他 AWS 账户”,然后在 “账户 ID” 中键入您的账户 ID。选择下一步: 权限。
-
选择您创建的策略,然后选择下一步:标签。
-
请勿添加任何标签。选择下一步:审核。
-
为角色命名 "KendraRoleForGettingStartedIndex" 然后选择 “创建角色”。
-
找到您刚才创建的角色。选择角色名称以打开摘要。选择信任关系,然后选择编辑信任关系。
-
将现有信任关系替换为内容:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "kendra.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
选择更新信任策略。
第三,如果您使用存储文档或使用 S3 进行测试 Amazon Kendra,则还必须创建 IAM 角色和策略才能访问您的存储桶。 Amazon S3 如果您正在使用其他数据来源,请参阅 数据来源的IAM 角色。
创建允许 Amazon Kendra 访问您的 Amazon S3 存储桶并为其编制索引的 IAM 角色和策略。
登录 AWS Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/
。 -
在左侧菜单中,选择策略,然后选择创建策略。
-
选择默认策略,JSON然后将其替换为以下内容:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::
bucket name
/*" ], "Effect": "Allow" }, { "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::bucket name
" ], "Effect": "Allow" }, { "Effect": "Allow", "Action": [ "kendra:BatchPutDocument", "kendra:BatchDeleteDocument" ], "Resource": "arn:aws:kendra:region
:account ID
:index/*" } ] } -
选择查看策略。
-
将策略命名为 KendraPolicyForGettingStartedDataSource “”,然后选择创建策略。
-
在左侧菜单中,选择角色,然后选择创建角色。
-
选择 “其他 AWS 账户”,然后在 “账户 ID” 中键入您的账户 ID。选择下一步: 权限。
-
选择您创建的策略,然后选择下一步:标签。
-
请勿添加任何标签。选择下一步:审核。
-
将角色命名为 “KendraRoleForGettingStartedDataSource”,然后选择 “创建角色”。
-
找到您刚才创建的角色。选择角色名称以打开摘要。选择信任关系,然后选择编辑信任关系。
-
将现有信任关系替换为内容:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "kendra.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
选择更新信任策略。
根据您想要的使用方式 Amazon Kendra API,请执行以下任一操作。