View a markdown version of this page

同意入口網站執行角色 - Amazon Bedrock AgentCore

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

同意入口網站執行角色

同意入口網站會擔任您在建立入口網站executionRoleArn時所傳遞的 IAM 角色。同意入口網站服務會擔任此角色來讀取閘道和 OAuth2 登入資料提供者組態,以及擷取 OAuth 用戶端秘密。在您建立同意入口網站之前,請使用本主題中所述的信任政策和許可政策來建立此執行角色。當您使用主控台建立同意入口網站或使用 CLI 建立同意入口網站executionRoleArn時,您會提供角色的 ARN。 AWS如需建立 IAM 角色的資訊,請參閱建立 IAM 角色。

同意入口網站執行角色必須包含下列信任政策,允許同意入口網站服務主體 bedrock-agentcore.amazonaws.com擔任該角色。aws:SourceAccount 和 aws:SourceArn條件會限制哪些帳戶和同意入口網站可以擔任該角色,以防止混淆代理人問題。

在政策中,取代:

  • us-east-1 搭配您正在使用的 AWS 區域

  • 123456789012 使用 AWS 您的帳戶 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": "123456789012" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:consent-portal/consent-portal-id" } } } ] }
注意

由於您在建立入口網站之前不會知道同意入口網站 ARN,因此您可以在第一次建立執行角色時省略 Condition 欄位。建立同意入口網站後,請將 Condition 欄位新增回政策做為最佳實務,並執行下列動作:

  • 將aws:SourceAccount條件索引鍵值取代為同意入口網站所屬的帳戶 ID。

  • 將aws:SourceArn條件索引鍵值取代為同意入口網站的 ARN。

將下列內嵌許可政策連接至執行角色。它授予同意入口網站讀取閘道和 OAuth2 憑證提供者組態以及擷取 OAuth 用戶端秘密所需的動作。

在政策中,取代:

  • us-east-1 搭配您正在使用的 AWS 區域

  • 123456789012 使用 AWS 您的帳戶 ID

  • 閘道 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:123456789012:gateway/gateway-id" }, { "Effect": "Allow", "Action": [ "bedrock-agentcore:GetOauth2CredentialProvider", "bedrock-agentcore:ListOauth2CredentialProviders" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:123456789012:token-vault/default/oauth2credentialprovider/*", "arn:aws:bedrock-agentcore:us-east-1:123456789012: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:123456789012:secret:bedrock-agentcore-identity!default/oauth2/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/aws:secretsmanager:owningService": "bedrock-agentcore-identity" } } } ] }