Cifrado de los recursos del agente con claves administradas por el cliente (CMK) - Amazon Bedrock

Cifrado de los recursos del agente con claves administradas por el cliente (CMK)

Puede crear en cualquier momento una clave administrada por el cliente para cifrar la información de su agente utilizando la siguiente información sobre el agente proporcionada al crear el agente.

nota

Los siguientes recursos de agentes solo se cifrarán para los agentes creados después del 22 de enero de 2025.

Acción Campos habilitados para CMK Descripción
CreateAgent instruction Indica al agente lo que debe hacer y cómo debe interactuar con los usuarios.
basePromptTemplate Define la plantilla de petición con la que reemplazar la plantilla de petición predeterminada
CreateAgentActionGroup description Descripción del grupo de acciones.
apiSchema Contiene los detalles de apiSchema del grupo de acciones del agente o la carga útil con formato JSON o YAML que define el esquema
s3 Contiene los detalles sobre el objeto de Amazon S3 que contiene el apiSchema para el grupo de acciones del agente
functionSchema Contiene los detalles del esquema de función del grupo de acciones del agente o la carga útil con formato JSON o YAML que define el esquema
AssociateAgentKnowledgeBase description Descripción de para qué utiliza el agente la base de conocimiento
AssociateAgentCollaborator collaborationInstruction Instrucciones para el agente colaborador

Para usar una clave administrada por el cliente, siga estos pasos:

  1. Cree una clave de administrada por el cliente con el AWS Key Management Service.

  2. Cree una política de claves y asóciela a la clave administrada por el cliente.

Crear una clave administrada por el cliente

Puede crear una clave simétrica administrada por el cliente mediante la consola de administración de AWS o las API de AWS Key Management Service.

En primer lugar, asegúrese de que tiene los permisos de CreateKey necesarios y, a continuación, siga los pasos que se indican en Creación de una clave simétrica administrada por el cliente en la Guía para desarrolladores de AWS Key Management Service.

Política de claves: las políticas de claves controlan el acceso a la clave administrada por el cliente. cliente o a su cuenta y región.Cada clave administrada por el cliente debe tener exactamente una política de clave, que contiene instrucciones que determinan quién puede usar la clave y cómo puede utilizarla. Cuando crea la clave administrada por el cliente, puede especificar una política de clave. Para obtener más información, consulte Administración del acceso a las claves administradas por el cliente en la Guía para desarrolladores de AWS Key Management Service.

Si ha creado su agente después del 22 de enero de 2025 y quiere utilizar una clave administrada por el cliente para cifrar la información del agente, asegúrese de que el usuario o el rol que llama a las operaciones de la API del agente tenga los siguientes permisos en la política de claves:

  • kms:GenerateDataKey: devuelve una clave de datos simétrica única para usarla fuera de AWS KMS.

  • KMS:Decrypt: descifra texto cifrado con una clave de KMS.

Al crear la clave, se devuelve un Arn para la clave que puede utilizar como customerEncryptionKeyArn al crear el agente.

Creación de una política de claves y asociación a la clave administrada por el cliente

Si cifra los recursos del agente con una clave administrada por el cliente, debe configurar una política basada en identidades y una política basada en recursos para que Amazon Bedrock pueda cifrar y descifrar los recursos del agente en su nombre.

Políticas basadas en identidad

Asocie la siguiente política basada en identidades a un usuario o rol de IAM con permisos para realizar llamadas a las API del agente que cifran y descifran los recursos del agente en su nombre. Esta política valida que el usuario que realiza llamadas a la API tenga permisos de AWS KMS. Sustituya los campos ${region}, ${account-id}, ${agent-id} y ${key-id} por los valores adecuados.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "EncryptAgents", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:123456789012:key/${key-id}", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:bedrock:arn": "arn:aws:bedrock:us-east-1:123456789012:agent/${agent-id}" } } } ] }

Política basada en recursos

Asocie la siguiente política basada en recursos a su clave de AWS KMS solo si va a crear grupos de acciones en los que el esquema de Amazon S3 esté cifrado. No necesita asociar una política basada en recursos para ningún otro caso de uso.

Para asociar la siguiente política basada en recursos, cambie el alcance de los permisos según sea necesario y sustituya ${region}, ${account-id}, ${agent-id} y ${key-id} por los valores adecuados.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "Allow account root to modify the KMS key, not used by Amazon Bedrock.", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "arn:aws:kms:us-east-1:123456789012:key/${key-id}" }, { "Sid": "Allow Amazon Bedrock to encrypt and decrypt Agent resources on behalf of authorized users", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:123456789012:key/${key-id}", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:bedrock:arn": "arn:aws:bedrock:us-east-1:123456789012:agent/${agent-id}" } } } ] }

Modificación de la clave administrada por el cliente

Los agentes de Amazon Bedrock no permiten volver a cifrar los agentes con control de versiones cuando se cambia la clave administrada por el cliente asociada al agente DRAFT o cuando se pasa de una clave administrada por el cliente a una clave propiedad de AWS. Con la nueva clave, solo se volverán a cifrar los datos del recurso DRAFT.

Asegúrese de no eliminar ni quitar los permisos de ninguna clave de un agente con control de versiones si lo utiliza para entregar datos de producción.

Para ver y verificar las claves que utiliza una versión, llame a GetAgentVersion y compruebe el customerEncryptionKeyArn en la respuesta.