View a markdown version of this page

同意门户执行角色 - Amazon Bedrock AgentCore
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)。

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

同意门户执行角色

用户意见征求门户将扮演您在创建门户executionRoleArn时传递的 IAM 角色。意见征求门户服务扮演此角色来读取网关和 OAuth2 凭据提供程序的配置以及检索 OAuth 客户端密钥。在创建用户意见征求门户之前,请使用本主题中描述的信任策略和权限策略创建此执行角色。您可以提供角色的 ARN,就像executionRoleArn使用控制台创建意见征求门户或使用 CLI Amazon 创建同意门户一样。有关创建 IAM 角色的信息,请参阅创建 IAM 角色。

用户意见征求门户执行角色必须包括以下信任策略,该策略允许用户意见征求门户服务主体担任该角色。bedrock-agentcore.amazonaws.comaws:SourceAccount和aws:SourceArn条件限制了哪个账户和同意门户可以担任该角色,从而防止混乱的副手问题。

在策略中,替换:

  • us-east-1使用您正在使用的 Amazon 区域

  • 111122223333使用您的 Amazon 账户 ID

  • consent-portal-id使用您的同意门户网站的 ID

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ConsentPortalAssumeRolePolicy", "Effect": "Allow", "Principal": { "Service": "bedrock-agentcore.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:us-east-1:111122223333:consent-portal/consent-portal-id" } } } ] }
注意

由于在创建门户之前您不会知道同意门户 ARN,因此可以在首次创建执行角色时省略该Condition字段。创建同意门户后,作为最佳安全实践,将该Condition字段重新添加到策略中,然后执行以下操作:

  • 将aws:SourceAccount条件键值替换为用户意见征求门户所属账号的 ID。

  • 将aws:SourceArn条件键值替换为用户意见征求门户的 ARN。

将以下内联权限策略附加到执行角色。它授予用户同意门户读取网关和 OAuth2 凭据提供程序配置以及检索 OAuth 客户端密钥所需的操作。

在策略中,替换:

  • us-east-1使用您正在使用的 Amazon 区域

  • 111122223333使用您的 Amazon 账户 ID

  • gateway-id使用用户意见征求门户所服务的网关的 ID

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock-agentcore:GetGateway", "bedrock-agentcore:GetGatewayTarget", "bedrock-agentcore:ListGatewayTargets" ], "Resource": "arn:aws:bedrock-agentcore:us-east-1:111122223333:gateway/gateway-id" }, { "Effect": "Allow", "Action": [ "bedrock-agentcore:GetOauth2CredentialProvider", "bedrock-agentcore:ListOauth2CredentialProviders" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:111122223333:token-vault/default/oauth2credentialprovider/*", "arn:aws:bedrock-agentcore:us-east-1:111122223333:token-vault/default" ] }, { "Effect": "Allow", "Action": [ "bedrock-agentcore:CompleteResourceTokenAuth", "bedrock-agentcore:GetResourceOauth2Token", "bedrock-agentcore:GetWorkloadAccessTokenForJWT" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue" ], "Resource": [ "arn:aws:secretsmanager:us-east-1:111122223333:secret:bedrock-agentcore-identity!default/oauth2/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/aws:secretsmanager:owningService": "bedrock-agentcore-identity" } } } ] }