Proteger las credenciales de ubicación de almacenamiento - AWS DataSync

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.

Proteger las credenciales de ubicación de almacenamiento

DataSync usa ubicaciones para acceder a los recursos de almacenamiento que se encuentran en las instalaciones, en otras nubes o dentro de ellas. AWS Algunos tipos de ubicaciones requieren que proporcione credenciales, como una clave de acceso y una clave secreta o un nombre de usuario y una contraseña, para autenticarse en el sistema de almacenamiento. Al crear una DataSync ubicación que requiere credenciales para la autenticación, puede elegir una de las siguientes opciones para controlar cómo se almacena el secreto de sus credenciales:

  • Guarde el secreto AWS Secrets Manager mediante un secreto administrado por el servicio cifrado con una clave predeterminada.

  • Guarde el secreto AWS Secrets Manager utilizando un secreto administrado por el servicio cifrado con una AWS KMS clave que usted administre.

  • Guarde el secreto AWS Secrets Manager con un secreto y una clave que usted cree y administre. DataSync accede a este secreto mediante una función de IAM que usted proporcione.

En todos los casos, el secreto de Secrets Manager se guarda en tu cuenta, lo que te permite actualizarlo según sea necesario, independientemente del DataSync servicio. Solo se te cobrará por el uso de los secretos que crees fuera de él DataSync. Los secretos creados y gestionados por DataSync llevan el prefijoaws-datasync.

Uso de un secreto administrado por el servicio cifrado con una clave predeterminada

Al crear tu DataSync ubicación, solo tienes que proporcionar la cadena secreta. DataSynccrea un recurso secreto AWS Secrets Manager para almacenar el secreto que usted proporciona y lo cifra con la clave KMS de Secrets Manager predeterminada para su cuenta. Puedes cambiar el valor secreto directamente en Secrets Manager o actualizando la ubicación mediante la DataSync consola o el SDK. AWS CLI Cuando eliminas el recurso de ubicación o lo actualizas para usar un secreto personalizado, el recurso secreto se DataSync elimina automáticamente.

nota

Para crear, modificar y eliminar recursos secretos en Secrets Manager, DataSync debe tener los permisos adecuados. Para más información, consulte Políticas administradas de AWS para DataSync.

Utilizar un secreto administrado por el servicio cifrado con una clave personalizada AWS KMS

Al crear la DataSync ubicación, proporciona el secreto y el ARN de la clave. AWS KMS DataSync crea automáticamente un recurso secreto AWS Secrets Manager para almacenar el secreto que proporciones y lo cifra con tu AWS KMS clave. Puedes cambiar el valor secreto directamente en Secrets Manager o actualizando la ubicación mediante la DataSync consola o el SDK. AWS CLI Cuando eliminas el recurso de ubicación o lo actualizas para usar un secreto personalizado, el recurso secreto se DataSync elimina automáticamente.

nota

AWS KMS La clave debe utilizar un cifrado simétrico con el tipo de ENCRYPT_DECRYPT clave. Para obtener más información, consulte Elegir una AWS Key Management Service clave en la Guía del AWS Secrets Manager usuario.

Para crear, modificar y eliminar recursos secretos en Secrets Manager, DataSync debe tener los permisos adecuados. Para obtener más información, consulte Políticas administradas de AWS : AWSDataSyncFullAccess.

Además de usar la política DataSync administrada correcta, también necesita los siguientes permisos:

{ "Sid": "DataSyncKmsPermissions", "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "your-kms-key-arn", "Condition": { "StringLike": { "kms:ViaService": "secretsmanager.*.amazonaws.com" } } }

your-kms-key-arnSustitúyala por el ARN de la clave KMS.

Para recuperar y descifrar el valor secreto, DataSync utiliza un rol vinculado a un servicio (SLR) para acceder a la clave. AWS KMS Para asegurarte de que DataSync puedes usar tu clave KMS, agrega lo siguiente a la declaración de política de la clave:

{ "Sid": "Allow DataSync to use the key for decryption", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::accountid:role/aws-service-role/datasync.amazonaws.com/AWSServiceRoleForDataSync" }, "Action": "kms:Decrypt", "Resource": "*" }

accountidSustitúyala por tu Cuenta de AWS ID.

Usando un secreto que tú administras

Antes de crear tu DataSync ubicación, crea una entrada secreta. AWS Secrets Manager El valor del secreto solo debe contener la propia cadena secreta en texto plano. Al crear la DataSync ubicación, proporciona el ARN del secreto y una función de IAM que se DataSync utiliza para acceder tanto a su secreto como a la AWS KMS clave utilizada para cifrarlo. Para crear un rol de IAM con los permisos adecuados, haga lo siguiente:

  1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.

  2. En el panel de navegación situado a la izquierda, en Administración de acceso, elija Roles y luego Crear rol.

  3. En la página Seleccione una entidad de confianza, en Tipo de entidad de confianza, elija AWS servicio.

  4. En Caso de uso, elija una opción DataSyncde la lista desplegable. Elija Siguiente.

  5. En la página Agregar permisos, elija Siguiente. Introduzca un nombre para su función y, a continuación, elija Crear función.

  6. En la página Roles, busque el rol que acaba de crear y seleccione el nombre.

  7. En la página de detalles del rol, selecciona la pestaña Permisos. Seleccione Añadir permisos y, a continuación, Crear política integrada.

  8. Selecciona la pestaña JSON y añade los siguientes permisos al editor de políticas:

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": "your-secret-arn" } ] }

    your-secret-arnSustitúyalo por el ARN de tu secreto de Secrets Manager.

  9. Elija Siguiente. Introduzca un nombre para su política y, a continuación, elija Crear política.

  10. (Recomendado) Para evitar el problema del suplente confuso entre servicios, haga lo siguiente:

    1. En la página de detalles del rol, selecciona la pestaña Relaciones de confianza. Elija Editar la política de confianza.

    2. Actualice la política de confianza mediante el siguiente ejemplo, que incluye las claves de contexto de condición global de aws:SourceArn y aws:SourceAccount:

      JSON
      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "StringLike": { "aws:SourceArn": "arn:aws:datasync:region:account-id:*" } } } ] }
    3. Elija Actualizar política.

Puede especificar este rol al crear su ubicación. Si tu secreto utiliza una AWS KMS clave gestionada por el cliente para el cifrado, también tendrás que actualizar la política de la clave para permitir el acceso desde la función que creaste en el procedimiento anterior. Para actualizar la política, añade lo siguiente a la declaración de política de tu AWS KMS clave:

{ "Sid": "Allow DataSync use of the key", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam accountid:role/your-role-name” }, "Action": "kms:Decrypt", "Resource": "*" }

accountidSustitúyala por tu Cuenta de AWS ID y your-role-name por el nombre de la función de IAM que creaste en el procedimiento anterior.

nota

Cuando guardas secretos en Secrets Manager, Cuenta de AWS incurres en cargos. Para obtener más información acerca de los precios, consulte Precios de AWS Secrets Manager.