View a markdown version of this page

Membuat peran layanan untuk Amazon Bedrock Agents - Amazon Bedrock

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

Membuat peran layanan untuk Amazon Bedrock Agents

Untuk menggunakan peran layanan khusus untuk agen alih-alih peran yang dibuat Amazon Bedrock secara otomatis, buat peran IAM dan lampirkan izin berikut dengan mengikuti langkah-langkah di Membuat peran untuk mendelegasikan izin ke layanan. AWS

  • Kebijakan kepercayaan

  • Kebijakan yang berisi izin berbasis identitas berikut:

    • Akses ke model dasar Amazon Bedrock.

    • Akses ke objek Amazon S3 yang berisi OpenAPI skema untuk grup tindakan di agen Anda.

    • Izin untuk Amazon Bedrock untuk menanyakan basis pengetahuan yang ingin Anda lampirkan ke agen Anda.

    • Jika salah satu situasi berikut berkaitan dengan kasus penggunaan Anda, tambahkan pernyataan ke kebijakan atau tambahkan kebijakan dengan pernyataan ke peran layanan:

      • (Opsional) Jika Anda mengaktifkan kolaborasi multi-agen, izin untuk mendapatkan alias dan memanggil kolaborator agen.

      • (Opsional) Jika Anda mengaitkan Throughput Tersediakan dengan alias agen Anda, izin untuk melakukan pemanggilan model menggunakan Throughput yang disediakan tersebut.

      • (Opsional) Jika Anda mengaitkan pagar pembatas dengan agen Anda, izin untuk menerapkan pagar pembatas itu. Jika pagar pembatas dienkripsi dengan kunci KMS, peran layanan juga akan memerlukan izin untuk mendekripsi kunci

      • (Opsional) Jika Anda mengenkripsi agen Anda dengan kunci KMS, izin untuk mendekripsi kunci.

Baik Anda menggunakan peran khusus atau tidak, Anda juga perlu melampirkan kebijakan berbasis sumber daya ke fungsi Lambda untuk grup tindakan di agen Anda untuk memberikan izin bagi peran layanan untuk mengakses fungsi. Untuk informasi selengkapnya, lihat Resource-based kebijakan untuk mengizinkan Amazon Bedrock memanggil fungsi grup tindakan Lambda.

Hubungan kepercayaan

Kebijakan kepercayaan berikut memungkinkan Amazon Bedrock mengambil peran ini dan membuat serta mengelola agen. Ganti ${values} yang diperlukan. Kebijakan berisi kunci kondisi opsional (lihat Kunci kondisi untuk Amazon Bedrock dan kunci konteks kondisi AWS global) di Condition bidang yang kami sarankan Anda gunakan sebagai praktik terbaik keamanan.

catatan

Sebagai praktik terbaik untuk tujuan keamanan, ganti * dengan ID agen tertentu setelah Anda membuatnya.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:us-east-1:123456789012:agent/*" } } } ] }

Identity-based izin untuk peran layanan Agen

Lampirkan kebijakan berikut untuk memberikan izin untuk peran layanan, ganti ${values} seperlunya. Kebijakan tersebut berisi pernyataan berikut. Hilangkan pernyataan jika tidak berlaku untuk kasus penggunaan Anda. Kebijakan berisi kunci kondisi opsional (lihat Kunci kondisi untuk Amazon Bedrock dan kunci konteks kondisi AWS global) di Condition bidang yang kami sarankan Anda gunakan sebagai praktik terbaik keamanan.

catatan

Jika Anda mengenkripsi agen Anda dengan kunci KMS yang dikelola pelanggan, lihat Enkripsi sumber daya agen untuk agen yang dibuat sebelum 22 Januari 2025 untuk izin lebih lanjut yang perlu Anda tambahkan.

  • Izin untuk menggunakan model dasar Amazon Bedrock untuk menjalankan inferensi model pada petunjuk yang digunakan dalam orkestrasi agen Anda.

  • Izin untuk mengakses skema API grup tindakan agen Anda di Amazon S3. Hilangkan pernyataan ini jika agen Anda tidak memiliki grup tindakan.

  • Izin untuk mengakses basis pengetahuan yang terkait dengan agen Anda. Hilangkan pernyataan ini jika agen Anda tidak memiliki basis pengetahuan terkait.

  • Izin untuk mengakses basis pengetahuan pihak ketiga (PineconeatauRedis Enterprise Cloud) yang terkait dengan agen Anda. Hilangkan pernyataan ini jika basis pengetahuan Anda adalah pihak pertama (Amazon OpenSearch Serverless atau Amazon Aurora) atau jika agen Anda tidak memiliki basis pengetahuan terkait.

  • Izin untuk mengakses prompt dari manajemen Prompt. Hilangkan pernyataan ini jika Anda tidak berencana untuk menguji prompt dari manajemen yang cepat dengan agen Anda di konsol Amazon Bedrock.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AgentModelInvocationPermissions", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-v2", "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-v2:1", "arn:aws:bedrock:us-east-1::foundation-model/anthropic.claude-instant-v1" ] }, { "Sid": "AgentActionGroupS3", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/SchemaJson" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "123456789012" } } }, { "Sid": "AgentKnowledgeBaseQuery", "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:RetrieveAndGenerate" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/knowledge-base-id" ] }, { "Sid": "Agent3PKnowledgeBase", "Effect": "Allow", "Action": [ "bedrock:AssociateThirdPartyKnowledgeBase" ], "Resource": "arn:aws:bedrock:us-east-1:123456789012:knowledge-base/knowledge-base-id", "Condition": { "StringEquals": { "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:kms:us-east-1:123456789012:key/KeyId" } } }, { "Sid": "AgentPromptManagementConsole", "Effect": "Allow", "Action": [ "bedrock:GetPrompt" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:prompt/prompt-id" ] } ] }
penting

Jika agen Anda menggunakan profil inferensi al ih-alih model dasar secara langsung, Anda harus membuat perubahan berikut pada AgentModelInvocationPermissions pernyataan:

  • Tambahkan profil inferensi ARN ke Resource daftar. Formatnya adalah arn:aws:bedrock:region:account-id:inference-profile/inference-profile-id.

  • Tambahkan tindakan berikut ke Action daftar:

    • bedrock:InvokeModelWithResponseStream

    • bedrock:GetInferenceProfile

    • bedrock:GetFoundationModel

Identity-based Kebijakan (Opsional) untuk mengizinkan Amazon Bedrock menggunakan Provisioned Throughput dengan alias agen Anda

Jika Anda mengait kan Through put Tersediakan dengan alias agen Anda, lampirkan kebijakan berbasis identitas berikut ke peran layanan atau tambahkan pernyataan ke kebijakan di. Identity-based izin untuk peran layanan Agen

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "UseProvisionedThroughput", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:provisioned-model/${provisioned-model-id}" ] } ] }

Identity-based Kebijakan (Opsional) untuk mengizinkan Amazon Bedrock mengasosiasikan dan memanggil kolaborator agen

Jika Anda mengaktifkan kolaborasi multi-agen, lampirkan kebijakan berbasis identitas berikut ke peran layanan atau tambahkan pernyataan ke kebijakan di. Identity-based izin untuk peran layanan Agen

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentMultiAgentsPolicyProd", "Effect": "Allow", "Action": [ "bedrock:GetAgentAlias", "bedrock:InvokeAgent" ], "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:agent-alias/${agent-id}/${agent-alias-id}" ] } ] }

Identity-based Kebijakan (Opsional) untuk mengizinkan Amazon Bedrock menggunakan pagar pembatas dengan Agen Anda

Jika Anda mengait kan pagar pem batas dengan agen Anda, lampirkan kebijakan berbasis identitas berikut ke peran layanan atau tambahkan pernyataan ke kebijakan di. Identity-based izin untuk peran layanan Agen

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ApplyGuardrail", "Effect": "Allow", "Action": "bedrock:ApplyGuardrail", "Resource": [ "arn:aws:bedrock:us-east-1:123456789012:guardrail/${guardrail-id}" ] } ] }

Identity-based Kebijakan (Opsional) untuk mengizinkan Amazon Bedrock mengakses file dari S3 untuk digunakan dengan interpretasi kode

Jika Anda mengaktifkanAktifkan interpretasi kode di Amazon Bedrock, lampirkan kebijakan berbasis identitas berikut ke peran layanan atau tambahkan pernyataan ke kebijakan dalam Identity-based izin untuk peran layanan Agen.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentFileAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectVersionAttributes", "s3:GetObjectAttributes" ], "Resource": [ "arn:aws:s3:::[[customerProvidedS3BucketWithKey]]" ] } ] }

Resource-based kebijakan untuk mengizinkan Amazon Bedrock memanggil fungsi grup tindakan Lambda

Ikuti langkah-langkah di Menggunakan kebijakan berbasis sumber daya untuk Lambda dan lampirkan kebijakan berbasis sumber daya berikut ke fungsi Lambda untuk mengizinkan Amazon Bedrock mengakses fungsi Lambda untuk grup tindakan agen Anda, mengganti yang diperlukan. ${values} Kebijakan berisi kunci kondisi opsional (lihat Kunci kondisi untuk Amazon Bedrock dan kunci konteks kondisi AWS global) di Condition bidang yang kami sarankan Anda gunakan sebagai praktik terbaik keamanan.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AccessLambdaFunction", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-1:123456789012:function:function-name", "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:us-east-1:123456789012:agent/${agent-id}" } } } ] }