Configurar Cloud Volumes ONTAP para usar una clave administrada por el cliente en AWS
Si deseas utilizar el cifrado de Amazon Web Services (AWS) con Cloud Volumes ONTAP, entonces necesitas configurar el AWS Key Management Service (KMS).
Una clave maestra de cliente (CMK) puede ser gestionada por AWS o por el cliente. Puede estar en la misma cuenta de AWS que la NetApp Console y Cloud Volumes ONTAP, o en una cuenta de AWS diferente (cuentas compartidas). AWS permite la gestión de claves solo a través de la consola de AWS. Para más información, consulta "Servicio de administración de claves de AWS".
-
Asegúrate de tener información sobre los roles de Identity and Access Management (IAM) del agente de NetApp Console para AWS.
-
Asegúrate de que haya una CMK activa.
Configura claves de KMS gestionadas por el cliente para una sola cuenta
Cuando el agente de Console y Cloud Volumes ONTAP están en la misma cuenta de AWS, sigue estos pasos:
-
Otorga el permiso de cifrado S3 al rol de IAM para el agente de la consola. Agrega la acción
s3:PutEncryptionConfigurationa la política del rol de IAM:{ "Sid": "cvoServicePolicy", "Effect": "Allow", "Action": [ "s3:PutEncryptionConfiguration" ], "Resource": "*" } -
Habilita el acceso del agente de la Console a la clave de cifrado gestionada por el cliente (CMEK). Utiliza uno de los siguientes métodos en la AWS Console:
-
En la consola de AWS, ve a KMS > Claves gestionadas por el cliente y selecciona tu clave CMEK.
-
En la sección Usuarios clave, selecciona Add.
-
Selecciona la función de tu instancia de agente de Console, por ejemplo,
occm-role, y haz clic en Add. -
Guarda tus cambios.
-
En la consola de AWS, ve a KMS y busca tu clave.
-
Selecciona la pestaña Política de claves y selecciona Editar.
-
Busca la instrucción que permite el acceso a la clave
AllowUseOfTheKeyy añade el Console agent role Amazon Resource Name (ARN) al arrayPrincipal. Reemplaza los marcadores de posición del siguiente ejemplo por tus valores:-
YOUR-ACCOUNT-ID: Tu ID de cuenta de AWS de 12 dígitos -
YOUR-AGENT-ROLE-NAME: el nombre del rol de IAM del agente de Console{ "Sid": "AllowUseOfTheKey", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::`YOUR-ACCOUNT-ID`:role/`YOUR-AGENT-ROLE-NAME`" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant", "kms:DescribeKey", "kms:ListKeys" ], "Resource": "*" }
-
-
Guarda tus cambios.
Configura claves de KMS gestionadas por el cliente para cuentas compartidas
Cuando el agente de Console se ejecuta en una cuenta de AWS (Account A) y Cloud Volumes ONTAP está implementado en otra cuenta de AWS (Account B), sigue primero todos los pasos correspondientes a una sola cuenta para Account A y luego completa estos pasos.
-
Añade la acción
s3:PutEncryptionConfigurational rol asumido de la cuenta B. Esto es necesario porque la llamada de cifrado del bucket FabricPool se ejecuta bajo el rol asumido de la cuenta B. Este permiso cubre habilitar el cifrado predeterminado en el bucket S3 usado para el tiering.{ "Sid": "cvoServicePolicy", "Effect": "Allow", "Action": [ "s3:PutEncryptionConfiguration" ], "Resource": "*" } -
Si la clave CMEK está almacenada en la cuenta B, el rol de agente de la cuenta A necesita acceso directo para usar esa clave. La política de claves KMS en la cuenta B concede ese acceso entre cuentas.
-
En la consola de AWS de la cuenta B, ve a KMS > Claves gestionadas por el cliente y selecciona la clave CMEK utilizada para la implementación de Cloud Volumes ONTAP.
-
Abre la pestaña Key policy y selecciona Edit.
-
Agrega una declaración que otorgue al rol de IAM de la Cuenta A acceso a la clave:
{ "Sid": "Allow use of the key from the agent account", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::ACCOUNT-A-ID:role/`YOUR-AGENT-ROLE-NAME`" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant", "kms:DescribeKey", "kms:ListKeys", "kms:ListAliases" ], "Resource": "*" }La política de claves de la cuenta B controla si se puede confiar en que el rol de agente de la consola de la cuenta A utilice la clave. Esta declaración de política es obligatoria además de la política de IAM de la cuenta A.
-
-
Actualiza la política de IAM del agente de la Console de la cuenta A para permitir llamadas a la API de KMS en las claves de la cuenta B.
-
En la consola de AWS de la cuenta A, ve a IAM > Roles y selecciona el rol Console agent, por ejemplo,
occm-roleoNetAppCloudManagerRole. -
Añade o actualiza los permisos de KMS para las claves de la cuenta B:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:List*", "kms:Describe*", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant" ], "Resource": [ "arn:aws:kms:*:ACCOUNT-B-ID:key/*", "arn:aws:kms:*:ACCOUNT-B-ID:alias/*" ] } ] }La política de claves de la cuenta B controla el acceso a la clave. La política de IAM de la cuenta A permite que el rol de agente de la Console realice llamadas a la API de KMS. Si falta la configuración en cualquiera de las dos cuentas, AWS restringe el acceso.
-
-
Agrega la cuenta A como una cuenta externa de AWS permitida en el CMEK de la cuenta B.
-
En la consola de AWS KMS de la cuenta B, abre la clave KMS en cuestión y busca la sección Other AWS accounts.
-
Selecciona Add other AWS accounts e introduce el ID de la cuenta de AWS correspondiente a la Cuenta A.


-
-
Documentación de Amazon:
-
NetApp documentación de la consola: