Instrucciones de política de claves de KMS avanzadas - AWS IAM Identity Center

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.

Instrucciones de política de claves de KMS avanzadas

Utilice las instrucciones de política de claves de KMS avanzadas para implementar controles de acceso más detallados para su clave de KMS administrada por el cliente. Estas políticas se basan en Instrucciones básicas de KMS y políticas de IAM al agregar condiciones de contexto de cifrado y restricciones específicas del servicio. Antes de decidir si va a utilizar las instrucciones de política de claves de KMS avanzadas, asegúrese de revisar las consideraciones pertinentes.

Uso del contexto de cifrado para restringir el acceso

Puede restringir el uso de claves de KMS a una instancia específica de IAM Identity Center especificando una condición de contexto de cifrado en sus instrucciones de política de claves. Las instrucciones de políticas de claves de referencia ya incluyen este contexto con un valor genérico. Sustituya el comodín «*» por un ARN de instancia de Identity Center y un ARN de Identity Store específicos para garantizar que la clave solo funcione con la instancia deseada. También puede añadir las mismas condiciones de contexto de cifrado a la política de IAM configurada para el uso de la clave de KMS entre cuentas.

Centro de identidades

"StringEquals": { "kms:EncryptionContext:aws:sso:instance-arn": "arn:aws:sso:::instance/ssoins-1234567890abcdef" }

Almacén de identidades

"StringEquals": { "kms:EncryptionContext:aws:identitystore:identitystore-arn": "arn:aws:identitystore::111122223333:identitystore/d-1234567890" }

Si necesita ayuda para encontrar estos identificadores, consulte Busque los identificadores necesarios.

nota

Solo puede usar una clave de KMS administrada por el cliente con una instancia de organización de IAM Identity Center. La clave administrada por el cliente debe estar ubicada en la cuenta de administración de la organización de AWS, lo que ayuda a garantizar que la clave se utilice con una única instancia de IAM Identity Center. Sin embargo, el mecanismo de contexto de cifrado proporciona una protección técnica independiente contra el uso de una sola instancia. También puede usar la clave de condición aws:SourceArn en las instrucciones de política de claves de KMS destinadas a las entidades principales de servicio de Identity Center e Identity Store.

Consideraciones para implementar las condiciones del contexto de cifrado

Antes de implementar las condiciones del contexto de cifrado, revise estos requisitos:

  • Acción DescribeKey. El contexto de cifrado no se puede aplicar a la acción «kms:DescribeKey», que pueden utilizar los administradores de IAM Identity Center. Al configurar su política de claves de KMS, excluya el contexto de cifrado para esta acción específica a fin de garantizar el correcto funcionamiento de su instancia de IAM Identity Center.

  • Configuración de una instancia nueva. Si habilita una nueva instancia de IAM Identity Center con una clave de KMS administrada por el cliente, consulte Consideraciones sobre las claves de KMS administradas por el cliente y las políticas de claves de KMS avanzadas.

  • Cambios en el origen de identidad. Al cambiar el origen de identidad a Active Directory o desde Active Directory, se debe prestar especial atención al contexto de cifrado. Consulte Consideraciones para cambiar la fuente de identidad.

Policy templates (Plantillas de política)

Seleccione entre estas plantillas de políticas avanzadas en función de sus requisitos de seguridad. Equilibre los controles de acceso detallados con la sobrecarga administrativa que suponen.

Los temas que se tratan aquí:

Instrucciones de política de KMS para el uso de solo lectura de una instancia específica de IAM Identity Center

Esta política permite a los auditores de seguridad y al resto del personal que solo necesita acceso de lectura a IAM Identity Center utilizar la clave de KMS.

Para usar esta política:

  1. Sustituya las entidades principales de IAM de administrador de solo lectura del ejemplo por las entidades principales de IAM de administrador actuales

  2. Sustituya el ARN de la instancia de IAM Identity Center de ejemplo por el ARN de la instancia real

  3. Sustituya el ARN de Identity Store de ejemplo por el ARN actual de Identity Store

  4. Si se utiliza la administración delegada, consulte Paso 4: configure las políticas de IAM para el uso entre cuentas de la clave de KMS

Si necesita ayuda para encontrar los valores de estos identificadores, consulte Busque los identificadores necesarios.

Una vez que haya actualizado la plantilla con sus valores, vuelva a Paso 2: prepare las instrucciones de política de claves de KMS para preparar otras instrucciones de política de claves de KMS, según sea necesario.

La acción kms:Decrypt por sí sola no restringe el acceso a las operaciones de solo lectura. La política de IAM debe aplicar el acceso de solo lectura a las API de servicio de IAM Identity Center.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowReadOnlyAccessToIdentityCenterAPI", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyAdminRole" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:EncryptionContext:aws:sso:instance-arn": "arn:aws:sso:::instance/ssoins-1234567890abcdef", "kms:ViaService": "sso.*.amazonaws.com" } } }, { "Sid": "AllowReadOnlyAccessToIdentityStoreAPI", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/MyAdminRole" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "arn:aws:identitystore::111122223333:identitystore/d-1234567890" } } } ] }

Se han perfeccionado las instrucciones de política de claves de KMS para el uso de aplicaciones administradas por AWS

Estas plantillas de políticas proporcionan un control más detallado sobre qué aplicaciones administradas por AWS pueden usar su clave de KMS.

nota

Algunas aplicaciones administradas por AWS no se pueden usar con IAM Identity Center configurado con una clave de KMS administrada por el cliente. Consulte Aplicaciones administradas por AWS que puede utilizar con IAM Identity Center.

Las Instrucciones básicas de políticas de IAM y de claves de KMS para el uso de aplicaciones administradas por AWS permiten que cualquier aplicación administrada por AWS de cualquier cuenta de la misma organización de AWS utilice la clave de KMS. Utilice estas políticas refinadas para restringir el acceso de la siguiente manera:

  • Entidad principal del servicio de aplicaciones

  • ARN de la instancia de aplicación

  • ID de cuenta de AWS

  • Contexto de cifrado para instancias específicas de IAM Identity Center

nota

Una entidad principal de servicio es un identificador único de un servicio de AWS, normalmente con el formato servicename.amazonaws.com (por ejemplo, elasticmapreduce.amazonaws.com para Amazon EMR).

Restricción por cuenta

Esta plantilla de instrucción de política de claves de KMS permite que una aplicación administrada por AWS en cuentas de AWS específicas utilice la clave de KMS mediante una instancia específica de IAM Identity Center.

Para usar esta política:

  1. Sustituya la entidad principal de servicio de ejemplo por la entidad principal de servicio de la aplicación actual

  2. Sustituya los ID de cuenta de ejemplo por los ID de cuenta reales en los que se implementan las aplicaciones administradas por AWS

  3. Sustituya el ARN de Identity Store de ejemplo por el ARN actual de Identity Store

  4. Sustituya el ARN de la instancia de IAM Identity Center de ejemplo por el ARN de la instancia real

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowServiceInSpecificAccountsToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "Service": "myapp.amazonaws.com" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": [ "111122223333", "444455556666" ] }, "StringLike": { "kms:ViaService": "sso.*.amazonaws.com", "kms:EncryptionContext:aws:sso:instance-arn": "arn:aws:sso:::instance/ssoins-1234567890abcdef" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } }, { "Sid": "AllowServiceInSpecificAccountsToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "Service": "myapp.amazonaws.com" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": [ "111122223333", "444455556666" ] }, "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "arn:aws:identitystore::111122223333:identitystore/d-1234567890" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } } ] }

Restricción por instancia de aplicación

Esta plantilla de instrucción de política de claves de KMS permite que una instancia de aplicación administrada por AWS específica utilice la clave de KMS mediante una instancia específica de IAM Identity Center.

Para usar esta política:

  1. Sustituya la entidad principal de servicio de ejemplo por la entidad principal de servicio de la aplicación actual

  2. Sustituya el ARN de la aplicación de ejemplo por el ARN de la instancia de aplicación real

  3. Sustituya el ARN de Identity Store de ejemplo por el ARN actual de Identity Store

  4. Sustituya el ARN de la instancia de IAM Identity Center de ejemplo por el ARN de la instancia real

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowSpecificAppInstanceToUseTheKMSKeyViaIdentityCenter", "Effect": "Allow", "Principal": { "Service": "myapp.amazonaws.com" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceARN": "arn:aws:myapp:us-east-1:111122223333:application/my-application" }, "StringLike": { "kms:ViaService": "sso.*.amazonaws.com", "kms:EncryptionContext:aws:sso:instance-arn": "arn:aws:sso:::instance/ssoins-1234567890abcdef" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } }, { "Sid": "AllowSpecificAppInstanceToUseTheKMSKeyViaIdentityStore", "Effect": "Allow", "Principal": { "Service": "myapp.amazonaws.com" }, "Action": "kms:Decrypt", "Resource": "*", "Condition": { "StringEquals": { "aws:SourceARN": "arn:aws:myapp:us-east-1:111122223333:application/my-application" }, "StringLike": { "kms:ViaService": "identitystore.*.amazonaws.com", "kms:EncryptionContext:aws:identitystore:identitystore-arn": "arn:aws:identitystore::111122223333:identitystore/d-1234567890" }, "Bool": { "aws:PrincipalIsAWSService": "true" } } } ] }