设置开源 OpenSearch 权限 - Amazon Personalize

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

设置开源 OpenSearch 权限

如果您使用开源 OpenSearch,则必须能够从您的开放搜索集群访问您的 Amazon Personalize 资源。要授予访问权限,请执行以下操作:

  • 如果您是 OpenSearch 从头开始设置,则可以使用快速启动 bash 脚本在 Docker 容器中运行 OpenSearch 集群。该脚本使用您的 AWS 个人资料中的默认凭据。您可以在运行该脚本时指定备用配置文件。

    这些证书必须与有权为您的 Amazon Personalize 活动执行 GetPersonalizedRanking操作的用户或角色相关联。如需 IAM 策略示例,请参阅 IAM 策略示例。或者,此类凭证必须有权代入具有这些权限的角色。您可以在为 Amazon Personalize 搜索排名插件创建管道时,为此角色提供 Amazon 资源名称 (ARN)。

  • 如果您不使用快速启动 bash 脚本,则可以手动将凭据添加到 OpenSearch 密钥库中。这些证书必须与有权为您的 Amazon Personalize 活动执行 GetPersonalizedRanking 操作的用户或角色相对应。

    要手动将 AWS 凭证添加到 OpenSearch 密钥库,请在 OpenSearch 集群运行的地方(例如 Docker 容器)运行以下命令。然后,提供每个凭证。如果您不使用会话令牌,则可以省略命令中的最后一行。

    opensearch-keystore add \ personalized_search_ranking.aws.access_key \ personalized_search_ranking.aws.secret_key \ personalized_search_ranking.aws.session_token
  • 如果您在 Amazon EC2 实例上运行 OpenSearch 集群,则可以使用 IAM 实例配置文件授予权限。该角色所附的政策必须授予其在您的 Amazon Personalize 活动中执行 GetPersonalizedRanking 操作的权限。它还必须向 Amazon EC2 授予代入角色的权限。

    有关 Amazon EC2 实例配置文件的信息,请参阅使用实例配置文件。有关策略示例,请参阅IAM 策略示例

IAM 策略示例

以下策略示例向用户或角色授予从 Amazon Personalize 市场活动中获得个性化排名的最低权限。对于 Campaign ARN,为 Amazon Personalize 市场活动指定 Amazon 资源名称 (ARN)。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "personalize:GetPersonalizedRanking" ], "Resource": "Campaign ARN" } ] }

此外,如果您在 Amazon EC2 实例上运行 OpenSearch 集群并使用 IAM 实例配置文件授予权限,则该角色的信任策略必须按如下方式授予 Amazon EC2 AssumeRole 权限。有关 Amazon EC2 实例配置文件的信息,请参阅使用实例配置文件

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }