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.
Disminuya el acceso a los proveedores de credenciales por identidad de carga de trabajo
Puede usar las políticas de IAM para controlar qué identidades de carga de trabajo tienen acceso a proveedores de credenciales específicos. Esto permite un control de acceso detallado y garantiza que solo los agentes autorizados puedan recuperar las credenciales de determinados servicios.
nota
La función de IAM que se asigna a un agente controla a qué proveedores de credenciales puede llamar el agente. El servicio no impone un enlace adicional entre las identidades de carga de trabajo y los proveedores de credenciales de la misma cuenta. Para seguir las prácticas de mínimos privilegios, limite los Resource bloques de políticas de IAM a los ARN de proveedores de credenciales e identidades de carga de trabajo específicos, en lugar de usarlos. *
Una llamada exitosa a un proveedor de credenciales no significa que las credenciales se devuelvan automáticamente. Las credenciales que recupera una carga de trabajo se refieren a la identidad del usuario en su token de acceso a la carga de trabajo. En el caso de los proveedores de OAuth2 (3LO), el usuario final debe haber completado la autorización para poder recuperar las credenciales de esa combinación de usuario e identidad de carga de trabajo.
Mecanismos de control de acceso
-
Restricciones basadas en la identidad de la carga de trabajo: limita el acceso del proveedor de credenciales a identidades de cargas de trabajo específicas
-
Resource-level permisos: controle el acceso a los proveedores de credenciales individuales mediante políticas ARN-based
-
Directory-level controles: administre el acceso a nivel del directorio de identidades de la carga de trabajo
-
Alcance del proveedor de credenciales: restrinja a qué proveedores de credenciales puede acceder una identidad de carga de trabajo al incluir los ARN de los proveedores de credenciales en el bloque de políticas
Resource
Temas
Ejemplos de políticas de IAM
Los siguientes ejemplos muestran cómo crear políticas de IAM que restrinjan el acceso del proveedor de credenciales en función de la identidad de la carga de trabajo y del proveedor de credenciales.
Restrinja el acceso a un proveedor de credenciales de clave de API específico
Esta política permite que una identidad de carga de trabajo recupere las claves de API solo de un proveedor de credenciales específico. El ARN del proveedor de credenciales del Resource bloque restringe el acceso a ese proveedor.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetResourceApiKey", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourceApiKey" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/<workload-identity-name>", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/api-key/<provider-name>" ] } ] }
Restrinja el acceso a un proveedor de credenciales de OAuth2 específico
Esta política permite que una identidad de carga de trabajo recupere los tokens de OAuth2 solo de un proveedor de credenciales de OAuth2 específico.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetResourceOauth2Token", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourceOauth2Token" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/<workload-identity-name>", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/oauth2-credential-provider/<provider-name>" ] } ] }
Permita que varias identidades de carga de trabajo accedan a un proveedor de credenciales
Esta política permite que varias identidades de carga de trabajo recuperen las claves de API del mismo proveedor de credenciales.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "GetResourceApiKeyMultipleIdentities", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourceApiKey" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/agent-1", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/agent-2", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/agent-3", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/api-key/<provider-name>" ] } ] }
Denegar el acceso a un proveedor de credenciales específico
Puede denegar explícitamente el acceso a una identidad de carga de trabajo a un proveedor de credenciales específico mediante una Deny sentencia. Las sentencias Denegar tienen prioridad sobre las sentencias Allow, lo que las hace útiles para crear barreras de protección.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAccessToSensitiveProvider", "Effect": "Deny", "Action": [ "bedrock-agentcore:GetResourceApiKey", "bedrock-agentcore:GetResourceOauth2Token" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/api-key/<sensitive-provider-name>", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/oauth2-credential-provider/<sensitive-provider-name>" ] } ] }
Utilice identidades de carga de trabajo independientes para diferentes proveedores de credenciales
Si necesita diferentes agentes para acceder a diferentes proveedores de credenciales, cree identidades de carga de trabajo independientes con funciones de IAM independientes. Cada función de IAM está limitada únicamente a los proveedores de credenciales que necesita el agente.
Por ejemplo, si el agente A solo debe acceder al proveedor X y el agente B solo debe acceder al proveedor Y:
-
Cree la identidad
agent-ay la identidad de la carga de trabajoagent-b -
Cree un rol de IAM
AgentARolecon una política que permita el acceso solo al proveedor X -
Cree un rol de IAM
AgentBRolecon una política que permita el acceso solo al proveedor Y -
Asocie cada identidad de carga de trabajo a su función de IAM correspondiente
Política de IAM para el agente A (solo acceso al proveedor X)
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AgentAAccessProviderX", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourceApiKey" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/agent-a", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/api-key/provider-x" ] } ] }
Política de IAM para el agente B (acceso únicamente al proveedor Y)
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AgentBAccessProviderY", "Effect": "Allow", "Action": [ "bedrock-agentcore:GetResourceApiKey" ], "Resource": [ "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:workload-identity-directory/default/workload-identity/agent-b", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default", "arn:aws:bedrock-agentcore:us-east-1:<account_id>:token-vault/default/api-key/provider-y" ] } ] }
Pasos para la implementación
Para implementar el control de acceso basado en la identidad de la carga de trabajo para los proveedores de credenciales:
-
Identifique las identidades de sus cargas de trabajo: utilícelo
aws bedrock-agentcore-control list-workload-identitiespara enumerar todas las identidades de las cargas de trabajo de su cuenta. Para obtener información sobre cómo crear y administrar identidades de cargas de trabajo, consulte Administrar identidades de cargas de trabajo con AgentCore Identity. -
Determine los ARN de los proveedores de credenciales: identifique los proveedores de credenciales específicos a los que desea controlar el acceso. Los ARN de los proveedores de credenciales siguen estos formatos:
-
arn:aws:bedrock-agentcore:<region>:<account_id>:token-vault/default/api-key/<provider-name> -
arn:aws:bedrock-agentcore:<region>:<account_id>:token-vault/default/oauth2-credential-provider/<provider-name>
-
-
Cree políticas de IAM: escriba políticas de IAM que especifiquen qué identidades de carga de trabajo pueden acceder a qué proveedores de credenciales
-
Adjunte políticas a las funciones: adjunte las políticas a las funciones de IAM utilizadas por sus agentes o aplicaciones
-
Pruebe los controles de acceso: compruebe que solo las identidades de carga de trabajo autorizadas puedan acceder a los proveedores de credenciales especificados
Prácticas recomendadas
-
Utilice nombres descriptivos para las identidades de las cargas de trabajo para facilitar la administración de políticas
-
Incluye los ARN de los proveedores de credenciales en el
Resourcebloque para limitar el acceso a proveedores específicos, en lugar de conceder el acceso a todos los proveedores de la cuenta -
Usa identidades de carga de trabajo y funciones de IAM independientes cuando diferentes agentes necesiten acceder a diferentes proveedores de credenciales
-
Utilice
Denydeclaraciones explícitas para crear barreras que impidan el acceso a proveedores de credenciales confidenciales, independientemente de otras políticas -
Audite y revise con regularidad las políticas de acceso para garantizar que se ajusten a sus requisitos de seguridad
-
Considera la posibilidad de utilizar las condiciones de la política de IAM para controles de acceso adicionales en función de la hora, la dirección IP u otros factores
-
Pruebe las políticas en un entorno de desarrollo antes de aplicarlas a las cargas de trabajo de producción