

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.

# Creación de un rol de servicio para los agentes de Amazon Bedrock
<a name="agents-permissions"></a>

Para usar un rol de servicio personalizado para los agentes en lugar del que Amazon Bedrock crea automáticamente, cree un rol de IAM y adjunte los siguientes permisos siguiendo los pasos que se indican en [Crear un rol para delegar permisos a un AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) servicio.
+ Política de confianza
+ Una política que contenga los siguientes permisos basados en identidades:
  + Acceso a los modelos base de Amazon Bedrock
  + Acceso a los objetos de Amazon S3 que contienen los esquemas de OpenAPI para los grupos de acciones de sus agentes
  + Permisos para que Amazon Bedrock consulte las bases de conocimientos que desea asociar a los agentes
  + Si alguna de las siguientes situaciones aparece en su caso de uso, añada la instrucción a la política o añada una política con la instrucción al rol de servicio:
    + (Opcional) Si habilita la colaboración entre múltiples agentes, los permisos para obtener los alias e invocar los colaboradores del agente.
    + (Opcional) Si asocia un rendimiento aprovisionado a su alias de agente, permisos para invocar modelos con ese rendimiento aprovisionado
    + (Opcional) Si asocia una barrera de protección al agente, permisos para aplicarla. Si la barrera de protección está cifrada con una clave de KMS, el rol de servicio también necesitará [permisos para descifrar la clave](guardrails-permissions-kms.md).
    + (Opcional) Si cifra su agente con una clave KMS, [permisos para descifrar la clave](encryption-agents.md).

Independientemente de si utiliza un rol personalizado o no, también debe asociar una **política basada en recursos** a las funciones de Lambda para los grupos de acciones de sus agentes para proporcionar permisos para que el rol de servicio acceda a las funciones. Para obtener más información, consulte [Política basada en recursos que permite a Amazon Bedrock invocar una función de Lambda de un grupo de acciones](#agents-permissions-lambda).

**Topics**
+ [Relación de confianza](#agents-permissions-trust)
+ [Permisos basados en identidades para el rol de servicio de los agentes](#agents-permissions-identity)
+ [(Opcional) Política basada en identidades que permite a Amazon Bedrock utilizar el rendimiento aprovisionado con su alias de agente](#agents-permissions-pt)
+ [(Opcional) Política basada en identidades que permite a Amazon Bedrock asociar e invocar agentes colaboradores](#agents-permissions-mac)
+ [(Opcional) Política basada en identidades que permite a Amazon Bedrock utilizar barreras de protección con su agente](#agents-permissions-gr)
+ [(Opcional) Política basada en identidades que permite a Amazon Bedrock acceder a los archivos de S3 para usarlos con la interpretación del código](#agents-permissions-files-ci)
+ [Política basada en recursos que permite a Amazon Bedrock invocar una función de Lambda de un grupo de acciones](#agents-permissions-lambda)

## Relación de confianza
<a name="agents-permissions-trust"></a>

La siguiente política de confianza permite a Amazon Bedrock asumir este rol y crear y administrar agentes. Sustituya esta opción {{\$\{values\}}} según sea necesario. La política contiene claves de condición opcionales (consulte [Claves de condición para Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) y [Claves de contexto de condición globales de AWS](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys)) en el campo `Condition` que es una práctica de seguridad que recomendamos.

**nota**  
Como práctica recomendada por motivos de seguridad, sustitúyalos por un agente específico una IDs vez que los haya creado. {{\*}}

------
#### [ 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/{{*}}"
                }
            }
        }
    ]
}
```

------

## Permisos basados en identidades para el rol de servicio de los agentes
<a name="agents-permissions-identity"></a>

Adjunte la siguiente política para proporcionar permisos para el rol de servicio y sustitúyala {{\$\{values\}}} según sea necesario. La política contiene las siguientes instrucciones. Omita una instrucción si no es aplicable a su caso de uso. La política contiene claves de condición opcionales (consulte [Claves de condición para Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) y [Claves de contexto de condición globales de AWS](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys)) en el campo `Condition` que es una práctica de seguridad que recomendamos.

**nota**  
Si cifra el agente con una clave de KMS administrada por el cliente, consulte [Cifrado de los recursos del agente para agentes creados antes del 22 de enero de 2025](encryption-agents.md) para los permisos que debe agregar.
+ Permisos para usar los modelos fundacionales de Amazon Bedrock para ejecutar inferencias de modelos en las peticiones utilizadas en la orquestación de su agente.
+ Permisos para acceder a los esquemas de API de los grupos de acciones de su agente en Amazon S3. Omita esta instrucción si su agente no tiene grupos de acciones.
+ Permisos para acceder a las bases de conocimientos asociadas al agente. Omita esta instrucción si su agente no tiene bases de conocimientos asociadas.
+ Permisos para acceder a una base de conocimientos de terceros (Pinecone o Redis Enterprise Cloud) asociada a su agente. Omita esta afirmación si su base de conocimientos es propia (Amazon OpenSearch Serverless o Amazon Aurora) o si su agente no tiene bases de conocimientos asociadas.
+ Permisos para acceder a una petición desde Administración de peticiones. Omita esta instrucción si no tiene previsto probar una petición de administración de peticiones con su agente en la consola de 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}}"
            ]
        }
    ]
}
```

------

## (Opcional) Política basada en identidades que permite a Amazon Bedrock utilizar el rendimiento aprovisionado con su alias de agente
<a name="agents-permissions-pt"></a>

Si asocia un [rendimiento aprovisionado](prov-throughput.md) a un alias del agente, asocie la siguiente política basada en identidades al rol de servicio o añada la instrucción a la política en [Permisos basados en identidades para el rol de servicio de los agentes](#agents-permissions-identity).

------
#### [ 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}}}"
        ]
      }
    ]
}
```

------

## (Opcional) Política basada en identidades que permite a Amazon Bedrock asociar e invocar agentes colaboradores
<a name="agents-permissions-mac"></a>

Si habilita la [colaboración entre múltiples agentes](agents-multi-agent-collaboration.md), asocie la siguiente política basada en identidades al rol de servicio o añada la instrucción a la política en [Permisos basados en identidades para el rol de servicio de los agentes](#agents-permissions-identity).

------
#### [ 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}}}"
            ]
        }
    ]
}
```

------

## (Opcional) Política basada en identidades que permite a Amazon Bedrock utilizar barreras de protección con su agente
<a name="agents-permissions-gr"></a>

Si asocia una [barrera de protección](guardrails.md) al agente, asocie la siguiente política basada en identidades al rol de servicio o añada la instrucción a la política en [Permisos basados en identidades para el rol de servicio de los agentes](#agents-permissions-identity).

------
#### [ JSON ]

****  

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

------

## (Opcional) Política basada en identidades que permite a Amazon Bedrock acceder a los archivos de S3 para usarlos con la interpretación del código
<a name="agents-permissions-files-ci"></a>

Si activa [Activación de la interpretación del código en Amazon Bedrock](agents-enable-code-interpretation.md), asocie la siguiente política basada en identidades al rol de servicio o añada la instrucción a la política en los [permisos basados en identidades para el rol de servicio de los agentes](https://docs.aws.amazon.com//bedrock/latest/userguide/agents-permissions.html#agents-permissions-identity).

------
#### [ JSON ]

****  

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

------

## Política basada en recursos que permite a Amazon Bedrock invocar una función de Lambda de un grupo de acciones
<a name="agents-permissions-lambda"></a>

Siga los pasos que se indican en [Uso de políticas basadas en recursos para Lambda](https://docs.aws.amazon.com/lambda/latest/dg/access-control-resource-based.html) y adjunte la siguiente política basada en recursos a una función de Lambda para permitir que Amazon Bedrock acceda a la función Lambda para los grupos de acción de su agente, sustituyéndola según sea necesario. {{\$\{values\}}} La política contiene claves de condición opcionales (consulte [Claves de condición para Amazon Bedrock](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys) y [Claves de contexto de condición globales de AWS](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonbedrock.html#amazonbedrock-policy-keys)) en el campo `Condition` que es una práctica de seguridad que recomendamos.

------
#### [ 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}}}"
                }
            }
        }
    ]
}
```

------