Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Autorizzazioni IAM per il runtime AgentCore
Di seguito sono elencate le autorizzazioni IAM necessarie per creare un agente in un AgentCore Runtime e le autorizzazioni per il ruolo di esecuzione necessarie a un agente per eseguire in un Runtime. AgentCore Puoi anche utilizzare policy basate sulle risorse per controllare l'accesso alle tue risorse di runtime.
Per informazioni sull'utilizzo di policy basate sulle risorse per controllare l'accesso alle risorse di AgentCore Runtime, consulta le politiche per Amazon Bedrock. Resource-based AgentCore
Argomenti
Usa Amazon Bedrock AgentCore
Per utilizzare Amazon Bedrock AgentCore, puoi collegare la policy BedrockAgentCoreFullAccess AWS gestita al tuo utente IAM o al tuo ruolo IAM. Questa policy AWS gestita concede ampie autorizzazioniGetWorkloadAccessTokenForUserId, tra cui la possibilità di emettere token di accesso al carico di lavoro utilizzando stringhe di identificatori utente fornite dal chiamante senza verifica del token IdP. Ti consigliamo di creare una policy personalizzata con solo le autorizzazioni richieste dall'applicazione copiando le dichiarazioni pertinenti e limitando le risorse al tuo caso d'uso specifico. Per le implementazioni di produzione in cui l'applicazione dispone di token JWT, è necessario limitarsi a negare e concedere esplicitamente. GetWorkloadAccessTokenForUserId GetWorkloadAccessTokenForJWT Per ulteriori informazioni, consulta Ottenere il token di accesso al carico di lavoro. Per utilizzare la AgentCore CLI, sono necessarie autorizzazioni aggiuntive.
Usa la CLI AgentCore
Per utilizzare la AgentCore CLI, allega la seguente policy IAM al tuo utente o ruolo IAM. Per modificare le autorizzazioni IAM, consulta Modificare le autorizzazioni per un utente IAM.
Importante
Le policy IAM create dalla AgentCore CLI sono progettate per scopi di sviluppo e test. Queste autorizzazioni garantiscono un ampio accesso per facilitare la prototipazione rapida e non sono adatte agli ambienti di produzione. Per le implementazioni di produzione, crea policy IAM personalizzate che seguano il principio del privilegio minimo e limitino le autorizzazioni solo alle risorse e alle azioni specifiche richieste dalla tua applicazione Amazon Bedrock. AgentCore Per una guida completa sulla sicurezza IAM, consulta le best practice di sicurezza per Runtime. AgentCore
{ "Version":"2012-10-17", "Statement": [ { "Sid": "IAMRoleManagement", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:DeleteRole", "iam:GetRole", "iam:PutRolePolicy", "iam:DeleteRolePolicy", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:TagRole", "iam:ListRolePolicies", "iam:ListAttachedRolePolicies" ], "Resource": [ "arn:aws:iam::*:role/*BedrockAgentCore*", "arn:aws:iam::*:role/service-role/*BedrockAgentCore*" ] }, { "Sid": "CodeBuildProjectAccess", "Effect": "Allow", "Action": [ "codebuild:StartBuild", "codebuild:BatchGetBuilds", "codebuild:ListBuildsForProject", "codebuild:CreateProject", "codebuild:UpdateProject", "codebuild:BatchGetProjects" ], "Resource": [ "arn:aws:codebuild:*:*:project/bedrock-agentcore-*", "arn:aws:codebuild:*:*:build/bedrock-agentcore-*" ] }, { "Sid": "CodeBuildListAccess", "Effect": "Allow", "Action": [ "codebuild:ListProjects" ], "Resource": "*" }, { "Sid": "IAMPassRoleAccess", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::*:role/AmazonBedrockAgentCore*", "arn:aws:iam::*:role/service-role/AmazonBedrockAgentCore*" ] }, { "Sid": "CloudWatchLogsAccess", "Effect": "Allow", "Action": [ "logs:GetLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:*:log-group:/aws/bedrock-agentcore/*", "arn:aws:logs:*:*:log-group:/aws/codebuild/*" ] }, { "Sid": "S3Access", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:CreateBucket", "s3:PutLifecycleConfiguration" ], "Resource": [ "arn:aws:s3:::bedrock-agentcore-*", "arn:aws:s3:::bedrock-agentcore-*/*" ] }, { "Sid": "ECRRepositoryAccess", "Effect": "Allow", "Action": [ "ecr:CreateRepository", "ecr:DescribeRepositories", "ecr:GetRepositoryPolicy", "ecr:InitiateLayerUpload", "ecr:CompleteLayerUpload", "ecr:PutImage", "ecr:UploadLayerPart", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "ecr:ListImages", "ecr:TagResource" ], "Resource": [ "arn:aws:ecr:*:*:repository/bedrock-agentcore-*" ] }, { "Sid": "ECRAuthorizationAccess", "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken" ], "Resource": "*" } ] }
Autorizzazioni utente per la console Amazon Bedrock AgentCore
Allega la BedrockAgentCoreFullAccess policy al ruolo della console. Inoltre, aggiungi le seguenti autorizzazioni per IAM se desideri che la console di servizio crei automaticamente il ruolo di esecuzione.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "IAMRoleAccess", "Effect": "Allow", "Action": ["iam:CreateRole"], "Resource": ["arn:aws:iam::*:role/service-role/AmazonBedrockAgentCoreRuntimeDefaultServiceRole-*"] }, { "Sid": "IAMPolicyAccess", "Effect": "Allow", "Action": ["iam:CreatePolicy"], "Resource": ["arn:aws:iam::*:policy/service-role/AmazonBedrockAgentCoreRuntimeExecutionPolicy_*"] }, { "Sid": "IAMRolePolicyAccess", "Effect": "Allow", "Action": ["iam:AttachRolePolicy"], "Resource": ["arn:aws:iam::*:role/service-role/AmazonBedrockAgentCoreRuntimeDefaultServiceRole-*"], "Condition": { "ArnLike": { "iam:PolicyARN": "arn:aws:iam::*:policy/service-role/AmazonBedrockAgentCoreRuntimeExecutionPolicy_*" } } }] }
Ruolo di esecuzione per l'esecuzione di un agente in Runtime AgentCore
Per eseguire l'agente o lo strumento in AgentCore Runtime è necessario un ruolo di esecuzione per la gestione delle AWS identità e degli accessi. Per informazioni sulla creazione di un ruolo IAM, vedi Creazione del ruolo IAM.
Nota
Se il role manager è abilitato nel tuo account, AgentCore assegna il ruolo per te e la fase di selezione del ruolo qui descritta viene sostituita da un'opzione Personalizza. Per utilizzare un ruolo diverso, scegli Personalizza. Per ulteriori informazioni, consulta Creazione di ruoli IAM nella Guida per l’utente IAM.
Il ruolo di esecuzione AgentCore diretta della distribuzione di Amazon Bedrock è un ruolo IAM che Amazon Bedrock AgentCore assume per eseguire un agente. Sostituisci quanto segue:
-
us-east-1con la AWS regione che stai utilizzando -
123456789012con l'ID AWS del tuo account -
agentNamecon il nome del tuo agente. Dovrai decidere il nome dell'agente prima di creare il ruolo e il AgentCore Runtime.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "logs:DescribeLogStreams", "logs:CreateLogGroup" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:/aws/bedrock-agentcore/runtimes/*" ] }, { "Effect": "Allow", "Action": [ "logs:PutResourcePolicy" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:/aws/bedrock-agentcore/runtimes/agentName-*" ] }, { "Effect": "Allow", "Action": ["logs:DescribeLogGroups"], "Resource": ["arn:aws:logs:us-east-1:123456789012:log-group:*"] }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:/aws/bedrock-agentcore/runtimes/*:log-stream:*" ] }, { "Effect": "Allow", "Action": [ "xray:PutTraceSegments", "xray:PutTelemetryRecords", "xray:GetSamplingRules", "xray:GetSamplingTargets" ], "Resource": ["*"] }, { "Effect": "Allow", "Resource": "*", "Action": "cloudwatch:PutMetricData", "Condition": { "StringEquals": { "cloudwatch:namespace": "bedrock-agentcore" } } }, { "Sid": "BedrockModelInvocation", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/*", "arn:aws:bedrock:us-east-1:123456789012:*" ] }] }
Il ruolo AgentCore di esecuzione di Runtime è un ruolo IAM che AgentCore Runtime assume per eseguire un agente. Sostituisci quanto segue:
-
us-east-1con la AWS regione che stai utilizzando -
123456789012con l'ID AWS del tuo account -
agentNamecon il nome del tuo agente. Dovrai decidere il nome dell'agente prima di creare il ruolo e il AgentCore Runtime.
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ECRImageAccess", "Effect": "Allow", "Action": [ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Resource": [ "arn:aws:ecr:us-east-1:123456789012:repository/*" ] }, { "Effect": "Allow", "Action": [ "logs:DescribeLogStreams", "logs:CreateLogGroup" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:/aws/bedrock-agentcore/runtimes/*" ] }, { "Effect": "Allow", "Action": [ "logs:PutResourcePolicy" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:/aws/bedrock-agentcore/runtimes/agentName-*" ] }, { "Effect": "Allow", "Action": [ "logs:DescribeLogGroups" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:*" ] }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-1:123456789012:log-group:/aws/bedrock-agentcore/runtimes/*:log-stream:*" ] }, { "Sid": "ECRTokenAccess", "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "xray:PutTraceSegments", "xray:PutTelemetryRecords", "xray:GetSamplingRules", "xray:GetSamplingTargets" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Resource": "*", "Action": "cloudwatch:PutMetricData", "Condition": { "StringEquals": { "cloudwatch:namespace": "bedrock-agentcore" } } }, { "Sid": "GetAgentAccessToken", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetWorkloadAccessToken", "bedrock-agentcore:GetWorkloadAccessTokenForJWT", "bedrock-agentcore:GetWorkloadAccessTokenForUserId" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:123456789012:workload-identity-directory/default", "arn:aws:bedrock-agentcore:us-east-1:123456789012:workload-identity-directory/default/workload-identity/agentName-*" ] }, {"Sid": "BedrockModelInvocation", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:InvokeModelWithResponseStream" ], "Resource": [ "arn:aws:bedrock:*::foundation-model/*", "arn:aws:bedrock:us-east-1:123456789012:*" ] } ] }
AgentCore Politica di fiducia in fase di esecuzione
Il ruolo AgentCore di esecuzione del Runtime deve includere la seguente politica di attendibilità che consente al AgentCore Runtime di assumere il ruolo.
Nella policy, sostituisci:
-
us-east-1con la AWS regione che stai utilizzando -
123456789012con l'ID AWS del tuo account
Per aggiungere la policy di trust al ruolo AgentCore di esecuzione di Runtime, accedi alla AWS Management Console, vai al ruolo, scegli la scheda Relazioni di fiducia e scegli Modifica politica di fiducia.
{ "Version":"2012-10-17", "Statement": [ { "Sid": "AssumeRolePolicy", "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:*" } } } ] }