

# Creación de un rol y una política de acceso a un secreto
<a name="USER_DMS_migration-IAM.secret-iam-role-policy"></a>

Siga los procedimientos que se indican a continuación para crear su rol y su política de acceso a un secreto que permitan a DMS acceder a las credenciales de usuario de sus bases de datos de origen y destino.

**Creación de un rol y una política de acceso a un secreto que permitan a Amazon RDS acceder a AWS Secrets Manager para acceder al secreto pertinente**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de AWS Identity and Access Management (IAM) en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. Elija **Políticas**, después elija **Crear política**.

1. Elija **JSON** e ingrese la siguiente política para permitir el acceso al secreto y el descifrado del secreto.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:{{us-east-1}}:{{111122223333}}:secret:SecretName-ABCDEF"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "kms:Decrypt",
                   "kms:DescribeKey"
               ],
               "Resource": "arn:aws:kms:{{us-east-1}}:111122223333:key/{{1234abcd-12ab-34cd-56ef-1234567890ab}}"
           }
       ]
   }
   ```

------

   Aquí, `{{secret_arn}}` es el ARN del secreto, que puede obtener del `SecretsManagerSecretId`, según corresponda, y `{{kms_key_arn}}` es el ARN de la clave de AWS KMS que utiliza para cifrar el secreto, como en el siguiente ejemplo.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "secretsmanager:GetSecretValue",
               "Resource": "arn:aws:secretsmanager:us-east-2:123456789012:secret:MySQLTestSecret-qeHamH"
           },
           {
                "Effect": "Allow",
                "Action": [
                           "kms:Decrypt",
                           "kms:DescribeKey"
                         ],
                "Resource": "arn:aws:kms:us-east-2:123456789012:key/761138dc-0542-4e58-947f-4a3a8458d0fd"
           }
        ]
   }
   ```

------
**nota**  
Si utiliza la clave de cifrado predeterminada creada por AWS Secrets Manager, no tiene que especificar los permisos de AWS KMS para `{{kms_key_arn}}`.  
Si desea que la política proporcione acceso a ambos secretos, simplemente especifique un objeto de recurso JSON adicional para el otro {{secret\_arn}}.

1. Revise y cree la política con un nombre descriptivo y una descripción opcional.

1. Elija **Roles**, después elija **Crear rol**.

1. Elija **Servicio de AWS** como tipo de entidad de confianza.

1. Elija **DMS** de la lista de servicios como servicio de confianza y, a continuación, elija **Siguiente: Permisos**.

1. Busque y asocie la política que creó en el paso 4 y, a continuación, agregue las etiquetas que desee y revise el rol. En este punto, edite las relaciones de confianza del rol para usar la entidad principal de servicio regional de Amazon RDS como entidad de confianza. Esta entidad principal tiene el formato siguiente.

   ```
   dms.{{region-name}}.amazonaws.com
   ```

   Aquí, {{`region-name`}} es el nombre de la región, por ejemplo `us-east-1`. Por lo tanto, le sigue una entidad principal de servicio regional de Amazon RDS para esta región.

   ```
   dms.us-east-1.amazonaws.com
   dms-data-migrations.amazonaws.com
   ```