

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Peran eksekusi portal persetujuan
<a name="identity-consent-portal-execution-role"></a>

Portal persetujuan mengambil peran IAM yang Anda berikan seperti `executionRoleArn` saat Anda membuat portal. Layanan Portal Persetujuan mengambil peran ini untuk membaca gateway dan konfigurasi penyedia kredensia OAuth2 dan untuk mengambil rahasia klien OAuth. Sebelum Anda membuat portal persetujuan, buat peran eksekusi ini dengan kebijakan kepercayaan dan kebijakan izin yang dijelaskan dalam topik ini. Anda memberikan ARN peran seperti `executionRoleArn` ketika Anda [ membuat portal persetujuan dengan konsol ](identity-create-consent-portal-console.md) atau [ membuat portal persetujuan dengan AWS CLI](identity-create-consent-portal.md). Untuk informasi tentang membuat peran IAM, lihat pembuatan peran [ IAM. ](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create.html)

## Kebijakan kepercayaan
<a name="consent-portal-execution-role-trust-policy"></a>

Peran eksekusi portal persetujuan harus menyertakan kebijakan kepercayaan berikut, yang memungkinkan prinsipal layanan Portal Persetujuan`bedrock-agentcore.amazonaws.com`,, untuk mengambil peran tersebut. Ket `aws:SourceAccount` entuan dan `aws:SourceArn` ketentuan membatasi akun dan portal persetujuan mana yang dapat mengambil peran, melindungi dari masalah wakil yang membingungkan.

Dalam kebijakan, ganti:
+  `us-east-1`dengan Wil AWS ayah yang Anda gunakan
+  `123456789012`dengan ID AWS akun Anda
+  {{consent-portal-id}}dengan ID portal persetujuan Anda

```
{
"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"
        }
      }
    }
  ]
}
```

**catatan**  
Karena Anda tidak akan mengetahui portal persetujuan ARN sebelum membuat portal, Anda dapat menghilangkan `Condition` bidang saat pertama kali membuat peran eksekusi. Setelah membuat portal persetujuan, tambahkan `Condition` bidang kembali ke kebijakan sebagai praktik keamanan terbaik dan lakukan hal berikut:  
Ganti nilai kunci `aws:SourceAccount` kondisi dengan ID akun milik portal persetujuan.
Ganti nilai kunci `aws:SourceArn` kondisi dengan ARN portal persetujuan.

## Kebijakan izin
<a name="consent-portal-execution-role-permissions-policy"></a>

Lampirkan kebijakan izin sebaris berikut ke peran eksekusi. Ini memberikan tindakan yang diperlukan portal persetujuan untuk membaca gateway dan konfigurasi penyedia kredensia OAuth2 dan untuk mengambil rahasia klien OAuth.

Dalam kebijakan, ganti:
+  `us-east-1`dengan Wil AWS ayah yang Anda gunakan
+  `123456789012`dengan ID AWS akun Anda
+  {{gateway-id}}dengan ID gateway yang dilayani portal persetujuan

```
{
"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"
        }
      }
    }
  ]
}
```