Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Permisos de IAM para AgentCore el tiempo de ejecución
A continuación se indican los permisos de IAM que necesita para crear un agente en un AgentCore entorno de ejecución y los permisos de rol de ejecución que un agente necesita para ejecutarse en un AgentCore entorno de ejecución. También puedes usar políticas basadas en recursos para controlar el acceso a tus recursos en tiempo de ejecución.
Para obtener información sobre el uso de políticas basadas en recursos para controlar el acceso a los recursos de AgentCore Runtime, consulte Resource-based las políticas de Amazon Bedrock. AgentCore
Temas
Utilice Amazon Bedrock AgentCore
Para usar Amazon Bedrock AgentCore, puede adjuntar la política BedrockAgentCoreFullAccess AWS gestionada a su usuario o rol de IAM. Esta política AWS gestionada otorga amplios permisosGetWorkloadAccessTokenForUserId, entre los que se incluye la posibilidad de emitir tokens de acceso a la carga de trabajo mediante cadenas de identificación de usuario proporcionadas por la persona que llama sin necesidad de verificar el token de IdP. Te recomendamos crear una política personalizada con solo los permisos que requiere tu aplicación, copiando las declaraciones pertinentes y restringiendo los recursos a tu caso de uso específico. En el caso de las implementaciones de producción en las que tu aplicación tenga disponibles tokens de JWT, deniégalos GetWorkloadAccessTokenForUserId y concédelos de forma explícita únicamente. GetWorkloadAccessTokenForJWT Para obtener más información, consulta Cómo obtener el token de acceso a la carga de trabajo. Para usar la AgentCore CLI, necesita permisos adicionales.
Utilice la AgentCore CLI
Para usar la AgentCore CLI, adjunte la siguiente política de IAM a su usuario o rol de IAM. Para cambiar los permisos de IAM, consulte Cambiar los permisos de un usuario de IAM.
importante
Las políticas de IAM creadas por la AgentCore CLI están diseñadas para fines de desarrollo y pruebas. Estos permisos otorgan un acceso amplio para facilitar la creación rápida de prototipos y no son adecuados para entornos de producción. Para las implementaciones de producción, cree políticas de IAM personalizadas que sigan el principio de privilegios mínimos y restrinjan los permisos únicamente a los recursos y acciones específicos que requiere su aplicación de Amazon Bedrock. AgentCore Para obtener una guía completa de seguridad de IAM, consulte las prácticas recomendadas de seguridad para 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": "*" } ] }
Permisos de usuario para Amazon Bedrock Console AgentCore
Adjunte la BedrockAgentCoreFullAccess política al rol de consola. Además, añada los siguientes permisos para IAM si quiere que la consola de servicio cree automáticamente el rol de ejecución.
{ "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_*" } } }] }
Función de ejecución para ejecutar un agente en Runtime AgentCore
Para ejecutar un agente o una herramienta en AgentCore Runtime, necesita un rol de ejecución de administración de AWS identidades y accesos. Para obtener información sobre la creación de un rol de IAM, consulte Creación de roles de IAM.
nota
Si la función de administrador de funciones está habilitada en su cuenta, AgentCore adjunta la función automáticamente y el paso de selección de funciones que se describe aquí se sustituye por una opción de personalización. Para usar un rol diferente, elija Personalizar. Para obtener más información, consulte Creación de roles de IAM en la Guía del usuario de IAM.
La función de ejecución de la implementación AgentCore directa de Amazon Bedrock es una función de IAM que Amazon Bedrock AgentCore asume para ejecutar un agente. Sustituya lo siguiente:
-
us-east-1con la AWS región que está utilizando -
123456789012con su ID AWS de cuenta -
agentNamecon el nombre de tu agente. Deberás decidir el nombre del agente antes de crear el rol y 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:*" ] }] }
La función AgentCore de ejecución en tiempo de ejecución es una función de IAM que AgentCore Runtime asume para ejecutar un agente. Sustituya lo siguiente:
-
us-east-1con la AWS región que está utilizando -
123456789012con su ID AWS de cuenta -
agentNamecon el nombre de tu agente. Deberás decidir el nombre del agente antes de crear el rol y 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 Política de confianza en Runtime
La función AgentCore de ejecución en tiempo de ejecución debe incluir la siguiente política de confianza, que permite que AgentCore Runtime asuma la función.
En la política, sustituya:
-
us-east-1con la AWS región que está utilizando -
123456789012con su ID AWS de cuenta
Para agregar la política de confianza al rol AgentCore de ejecución en tiempo de ejecución, vaya a la consola de AWS administración, navegue hasta el rol, elija la pestaña Relaciones de confianza y elija Editar política de confianza.
{ "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:*" } } } ] }