View a markdown version of this page

Gunakan tombol kondisi IAM dengan pengaturan AgentCore VPC - Batuan Dasar Amazon AgentCore

Gunakan tombol kondisi IAM dengan pengaturan AgentCore VPC

Gunakan kunci AgentCore-specific kondisi Amazon Bedrock untuk pengaturan VPC agar lebih tepat mengontrol izin untuk sumber daya Anda. AgentCore Misalnya, mewajibkan semua runtime di organisasi Anda terhubung ke VPC, atau menerapkan target gateway tersebut ke subnet yang disetujui. Tentukan subnet dan grup keamanan yang dapat dan tidak dapat digunakan pengguna.

AgentCore mendukung kunci kondisi berikut dalam kebijakan IAM:

  • batuan dasar agentcore:subnet — Izinkan atau tolak satu atau lebih subnet.

  • Bedrock-agentcore:SecurityGroups — Izinkan atau tolak satu atau beberapa grup keamanan.

Operasi AgentCore Control Plane API berikut mendukung kunci kondisi ini:

  • AgentCore runtime dan alat bawaanCreateAgentRuntime,, UpdateAgentRuntimeCreateCodeInterpreter, dan CreateBrowser

  • AgentCore GatewayCreateGatewayTarget dan UpdateGatewayTarget (saat mengonfigurasi sumber daya VPC terkelola untuk target)

Untuk informasi selengkapnya tentang penggunaan kunci kondisi dalam kebijakan IAM, lihat IAM JSON Policy Elements: Condition in the IAM User Guide. Untuk informasi selengkapnya tentang kunci kondisi Gateway, lihat Menggunakan kunci kondisi IAM dengan Amazon Bedrock AgentCore Gateway.

Contoh kebijakan dengan kunci syarat untuk pengaturan VPC

Contoh-contoh berikut ini menunjukkan cara menggunakan kunci syarat untuk pengaturan VPC. Buat pernyataan kebijakan dengan batasan yang diinginkan, lalu lampirkan pernyataan kebijakan ke pengguna atau peran target.

Mengharuskan pengguna hanya menerapkan VPC-connected runtime dan alat

Untuk mewajibkan semua pengguna hanya menerapkan VPC-connected AgentCore Runtime dan alat bawaan, tolak waktu proses dan pembuatan alat dan perbarui operasi yang tidak menyertakan subnet dan grup keamanan yang valid.

{ "Sid": "EnforceVPCRuntime", "Action": [ "bedrock-agentcore:CreateAgentRuntime", "bedrock-agentcore:UpdateAgentRuntime", "bedrock-agentcore:CreateCodeInterpreter", "bedrock-agentcore:CreateBrowser" ], "Effect": "Deny", "Resource": "*", "Condition": { "Null": { "bedrock-agentcore:subnets": "true", "bedrock-agentcore:securityGroups": "true" } } }

Menegakkan bahwa pengguna hanya menggunakan subnet dan grup keamanan tertentu

Untuk menegakkan bahwa pengguna hanya menggunakan subnet dan grup keamanan tertentu yang disetujui, gunakan operator yang ForAnyValue ditetapkan dengan. StringNotEquals Kondisi mengembalikan nilai true jika salah satu nilai kunci konteks dalam permintaan tidak cocok dengan nilai kunci konteks dalam kebijakan, menolak permintaan yang menyertakan nilai yang tidak disetujui. Contoh berikut memberlakukan bahwa pengguna hanya dapat menggunakan subnet-0123456789abcdef0 dan subnet-0123456789abcdef1 untuk subnet, dan sg-0123456789abcdef0 dan sg-0123456789abcdef1 untuk grup keamanan.

[ { "Sid": "DenyIfNotSpecificSubnets", "Effect": "Deny", "Action": [ "bedrock-agentcore:CreateAgentRuntime", "bedrock-agentcore:UpdateAgentRuntime", "bedrock-agentcore:CreateCodeInterpreter", "bedrock-agentcore:CreateBrowser" ], "Resource": "*", "Condition": { "ForAnyValue:StringNotEquals": { "bedrock-agentcore:subnets": ["subnet-0123456789abcdef0", "subnet-0123456789abcdef1"] } } }, { "Sid": "DenyIfNotSpecificSecurityGroups", "Effect": "Deny", "Action": [ "bedrock-agentcore:CreateAgentRuntime", "bedrock-agentcore:UpdateAgentRuntime", "bedrock-agentcore:CreateCodeInterpreter", "bedrock-agentcore:CreateBrowser" ], "Resource": "*", "Condition": { "ForAnyValue:StringNotEquals": { "bedrock-agentcore:securityGroups": ["sg-0123456789abcdef0", "sg-0123456789abcdef1"] } } } ]

Menolak akses pengguna ke subnet atau grup keamanan tertentu

Untuk menolak akses pengguna ke subnet dan grup keamanan tertentu, gunakan operator yang ForAnyValue ditetapkan denganStringEquals. Kondisi mengembalikan nilai true jika salah satu nilai kunci konteks dalam permintaan cocok dengan salah satu nilai kunci konteks dalam kebijakan. Contoh berikut menolak akses pengguna ke subnet-0123456789abcdef0 dan subnet-0123456789abcdef1 untuk subnet, dan sg-0123456789abcdef0 dan sg-0123456789abcdef1 untuk grup keamanan.

[ { "Sid": "EnforceOutOfSubnet", "Action": [ "bedrock-agentcore:CreateAgentRuntime", "bedrock-agentcore:UpdateAgentRuntime", "bedrock-agentcore:CreateCodeInterpreter", "bedrock-agentcore:CreateBrowser" ], "Effect": "Deny", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "bedrock-agentcore:subnets": ["subnet-0123456789abcdef0", "subnet-0123456789abcdef1"] } } }, { "Sid": "EnforceOutOfSecurityGroups", "Action": [ "bedrock-agentcore:CreateAgentRuntime", "bedrock-agentcore:UpdateAgentRuntime", "bedrock-agentcore:CreateCodeInterpreter", "bedrock-agentcore:CreateBrowser" ], "Effect": "Deny", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "bedrock-agentcore:securityGroups": ["sg-0123456789abcdef0", "sg-0123456789abcdef1"] } } } ]