

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.

# Seguridad en AWS Database Migration Service
<a name="CHAP_Security"></a>

La seguridad en la nube AWS es la máxima prioridad. Como AWS cliente, usted se beneficia de un centro de datos y una arquitectura de red diseñados para cumplir con los requisitos de las organizaciones más sensibles a la seguridad.

La seguridad es una responsabilidad compartida entre usted AWS y usted. El [modelo de responsabilidad compartida](https://aws.amazon.com/compliance/shared-responsibility-model/) la describe como seguridad *de* la nube y seguridad *en* la nube:
+ **Seguridad de la nube**: AWS es responsable de proteger la infraestructura que ejecuta AWS los servicios en la AWS nube. AWS también le proporciona servicios que puede utilizar de forma segura. Auditores independientes prueban y verifican periódicamente la eficacia de nuestra seguridad en el marco de los [programas de conformidad de AWS](https://aws.amazon.com/compliance/programs/). Para obtener más información sobre los programas de cumplimiento aplicables AWS DMS, consulte [AWS los servicios clasificados por programa de cumplimiento](https://aws.amazon.com/compliance/services-in-scope/).
+ **Seguridad en la nube**: su responsabilidad viene determinada por el AWS servicio que utilice. Usted también es responsable de otros factores incluida la confidencialidad de los datos, los requisitos de la empresa y la legislación y los reglamentos aplicables. 

Esta documentación le ayuda a comprender cómo aplicar el modelo de responsabilidad compartida cuando se utiliza AWS DMS. Los siguientes temas muestran cómo configurarlo AWS DMS para cumplir sus objetivos de seguridad y conformidad. También aprenderá a utilizar otros AWS servicios que le ayudan a supervisar y proteger sus AWS DMS recursos. 

Puede administrar el acceso a sus AWS DMS recursos y bases de datos (DBs). El método que utilice para administrar el acceso depende de la tarea de replicación que necesite realizar con AWS DMS: 
+ Utilice políticas AWS Identity and Access Management (IAM) para asignar permisos que determinen quién puede administrar AWS DMS los recursos. AWS DMS requiere que tenga los permisos adecuados si inicia sesión como usuario de IAM. Por ejemplo, puede utilizar IAM para determinar quién tiene permiso para crear, describir, modificar y eliminar instancias y clústeres de bases de datos, etiquetar recursos o modificar grupos de seguridad. Para obtener más información sobre IAM y su uso con AWS DMS, consulte. [Gestión de identidad y acceso para AWS Database Migration Service](security-iam.md)
+ AWS DMS utiliza Secure Sockets Layer (SSL) para las conexiones de sus puntos finales con Transport Layer Security (TLS). Para obtener más información sobre su uso SSL/TLS con AWS DMS, consulte[Uso de SSL con AWS Database Migration Service](CHAP_Security.SSL.md).
+ AWS DMS utiliza las claves de cifrado AWS Key Management Service (AWS KMS) para cifrar el almacenamiento utilizado por la instancia de replicación y la información de conexión de su punto final. AWS DMS también utiliza claves de AWS KMS cifrado para proteger los datos de destino en reposo para los puntos de enlace de destino de Amazon S3 y Amazon Redshift. Para obtener más información, consulte [Establecer una clave de cifrado y especificar AWS KMS los permisos](#CHAP_Security.EncryptionKey).
+ AWS DMS siempre crea la instancia de replicación en una nube privada virtual (VPC) basada en el servicio Amazon VPC para lograr el máximo control de acceso a la red posible. Para las instancias de base de datos y los clústeres de instancias, utilice la misma VPC que la instancia de replicación o una adicional VPCs para que coincida con este nivel de control de acceso. Cada Amazon VPC que utilice debe estar asociada a un grupo de seguridad que tenga reglas que permitan que todo el tráfico de todos los puertos salga de la VPC. Este enfoque permite la comunicación entre la instancia de replicación y los puntos de enlace de su base de datos de origen y de destino, siempre que en dichos puntos de enlace se haya activado la entrada correcta. 

  Para obtener más información sobre las configuraciones de red disponibles AWS DMS, consulte[Configuración de una red para una instancia de replicación](CHAP_ReplicationInstance.VPC.md). Para obtener más información sobre la creación de una instancia de base de datos o un clúster de instancias en una VPC, consulte la documentación de seguridad y administración de clústeres para las bases de datos de Amazon en [Documentación de AWS](https://docs.aws.amazon.com/index.html?nc2=h_ql_doc_do_v). Para obtener más información acerca de las configuraciones de red AWS DMS compatibles, consulte [Configuración de una red para una instancia de replicación](CHAP_ReplicationInstance.VPC.md).
+ Para ver los registros de migración de bases de datos, necesita los permisos de Amazon CloudWatch Logs adecuados para la función de IAM que esté utilizando. Para obtener más información acerca del registro para AWS DMS, consulte [Supervisión de las tareas de replicación mediante Amazon CloudWatch](CHAP_Monitoring.md#CHAP_Monitoring.CloudWatch).

**Topics**
+ [Protección de datos en AWS Database Migration Service](CHAP_Security.DataProtection.md)
+ [Gestión de identidad y acceso para AWS Database Migration Service](security-iam.md)
+ [Validación de conformidad para AWS Database Migration Service](dms-compliance.md)
+ [Resiliencia en AWS Database Migration Service](disaster-recovery-resiliency.md)
+ [Seguridad de la infraestructura en AWS Database Migration Service](infrastructure-security.md)
+ [Control de acceso detallado mediante nombres de recursos y etiquetas](CHAP_Security.FineGrainedAccess.md)
+ [Cifrado para migraciones AWS DMS homogéneas](#CHAP_Security.Migrations)
+ [Establecer una clave de cifrado y especificar AWS KMS los permisos](#CHAP_Security.EncryptionKey)
+ [Seguridad de red para AWS Database Migration Service](#CHAP_Security.Network)
+ [Uso de SSL con AWS Database Migration Service](CHAP_Security.SSL.md)
+ [Cambio de la contraseña de la base de datos](#CHAP_Security.ChangingDBPassword)
+ [Uso de la autenticación Kerberos con AWS Database Migration Service](CHAP_Security.Kerberos.md)

# Protección de datos en AWS Database Migration Service
<a name="CHAP_Security.DataProtection"></a>

## Cifrado de datos
<a name="CHAP_Security.DataProtection.DataEncryption"></a>

Puede habilitar el cifrado de los recursos de datos de los puntos finales de AWS DMS destino compatibles. AWS DMS también cifra las conexiones hacia AWS DMS AWS DMS y entre todos sus puntos finales de origen y destino. Además, puede administrar las claves que utilizan los puntos finales de destino compatibles AWS DMS y las claves que los utilizan para habilitar este cifrado.

**Topics**
+ [Cifrado en reposo](#CHAP_Security.DataProtection.DataEncryption.EncryptionAtRest)
+ [Cifrado en tránsito](#CHAP_Security.DataProtection.DataEncryption.EncryptionInTransit)
+ [Administración de claves](#CHAP_Security.DataProtection.DataEncryption.KeyManagement)

### Cifrado en reposo
<a name="CHAP_Security.DataProtection.DataEncryption.EncryptionAtRest"></a>

AWS DMS admite el cifrado en reposo, ya que le permite especificar el modo de cifrado del lado del servidor que desea utilizar para enviar los datos replicados a Amazon S3 antes de copiarlos en los puntos de enlace de destino compatibles AWS DMS . Puede especificar este modo de cifrado estableciendo el atributo de conexión `encryptionMode` adicional para el punto de enlace. Si esta `encryptionMode` configuración especifica el modo de cifrado de claves de KMS, también puede crear AWS KMS claves personalizadas específicamente para cifrar los datos de destino de los siguientes puntos de enlace de destino: AWS DMS 
+ Amazon Redshift: para obtener más información acerca de la configuración de `encryptionMode`, consulte [Configuración de punto final cuando se utiliza Amazon Redshift como destino para AWS DMS](CHAP_Target.Redshift.md#CHAP_Target.Redshift.ConnectionAttrib). Para obtener más información sobre la creación de una clave de AWS KMS cifrado personalizada, consulte. [Creación y uso de AWS KMS claves para cifrar los datos de destino de Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys)
+ Amazon S3: para obtener más información acerca de la configuración de `encryptionMode`, consulte [Configuración de punto final cuando se utiliza Amazon S3 como destino para AWS DMS](CHAP_Target.S3.md#CHAP_Target.S3.Configuring). Para obtener más información sobre la creación de una clave de AWS KMS cifrado personalizada, consulte[Creación de AWS KMS claves para cifrar los objetos de destino de Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

### Cifrado en tránsito
<a name="CHAP_Security.DataProtection.DataEncryption.EncryptionInTransit"></a>

AWS DMS admite el cifrado en tránsito al garantizar que los datos que replica se muevan de forma segura desde el punto final de origen al punto final de destino. Esto incluye el cifrado de un bucket S3 en la instancia de replicación que la tarea de replicación utiliza para el almacenamiento intermedio a medida que los datos se mueven a través de la canalización de replicación. Para cifrar las conexiones de tareas con los puntos finales de origen y destino, AWS DMS utilice Secure Socket Layer (SSL) o Transport Layer Security (TLS). Al cifrar las conexiones a ambos puntos finales, se AWS DMS asegura de que sus datos estén seguros a medida que se mueven desde el punto final de origen a la tarea de replicación y desde la tarea al punto final de destino. Para obtener más información sobre el uso SSL/TLS con AWS DMS, consulte [Uso de SSL con AWS Database Migration Service](CHAP_Security.SSL.md)

AWS DMS admite claves predeterminadas y personalizadas para cifrar tanto el almacenamiento de replicación intermedio como la información de conexión. Estas claves se administran mediante AWS KMS. Para obtener más información, consulte [Establecer una clave de cifrado y especificar AWS KMS los permisos](CHAP_Security.md#CHAP_Security.EncryptionKey).

### Administración de claves
<a name="CHAP_Security.DataProtection.DataEncryption.KeyManagement"></a>

AWS DMS admite claves predeterminadas o personalizadas para cifrar el almacenamiento de replicación, la información de conexión y el almacenamiento de datos de destino para determinados puntos finales de destino. Estas claves se administran mediante. AWS KMS Para obtener más información, consulte [Establecer una clave de cifrado y especificar AWS KMS los permisos](CHAP_Security.md#CHAP_Security.EncryptionKey).

## Privacidad del tráfico entre redes
<a name="CHAP_Security.DataProtection.InternetworkTraffic"></a>

Las conexiones cuentan con protección entre los puntos finales de origen AWS DMS y destino de la misma AWS región, ya sea que se ejecuten de forma local o como parte de un AWS servicio en la nube. (Al menos un punto final, origen o destino, debe ejecutarse como parte de un AWS servicio en la nube). Esta protección se aplica tanto si estos componentes comparten la misma nube privada virtual (VPC) como si existen por separado VPCs, si todos VPCs se encuentran en la misma AWS región. Para obtener más información sobre las configuraciones de red compatibles AWS DMS, consulte[Configuración de una red para una instancia de replicación](CHAP_ReplicationInstance.VPC.md). Para obtener más información acerca de las consideraciones de seguridad al utilizar estas configuraciones de red, consulte [Seguridad de red para AWS Database Migration Service](CHAP_Security.md#CHAP_Security.Network).

## Protección de los datos en DMS Fleet Advisor
<a name="fa-security-data-protection"></a>

DMS Fleet Advisor recopila y analiza los metadatos de la base de datos para determinar el tamaño correcto del destino de migración. DMS Fleet Advisor no accede a los datos de las tablas ni los transfiere. Además, DMS Fleet Advisor no realiza un seguimiento del uso de las características de la base de datos ni accede a las estadísticas de uso.

Se controla el acceso a las bases de datos al crear los usuarios de la base de datos que DMS Fleet Advisor utiliza para trabajar con las bases de datos. Se conceden los privilegios necesarios a estos usuarios. Para utilizar DMS Fleet Advisor, debe conceder permisos de lectura a los usuarios de la base de datos. DMS Fleet Advisor no modifica las bases de datos ni requiere permisos de escritura. Para obtener más información, consulte [Creación de usuarios de bases de datos para AWS DMS Fleet Advisor](fa-database-users.md).

Puede utilizar el cifrado de datos en sus bases de datos. AWS DMS también cifra las conexiones dentro de DMS Fleet Advisor y sus recopiladores de datos.

El recopilador de datos de DMS utiliza la interfaz de programación de aplicaciones de protección de datos (DPAPI) para cifrar, proteger y almacenar información sobre el entorno del cliente y las credenciales de la base de datos. DMS Fleet Advisor almacena estos datos cifrados en un archivo en el servidor en el que funciona el recopilador de datos de DMS. DMS Fleet Advisor no transfiere estos datos desde este servidor. Para obtener más información sobre DPAPI, consulte [Cómo: Uso de la protección de datos](https://learn.microsoft.com/en-us/dotnet/standard/security/how-to-use-data-protection).

Tras instalar el recopilador de datos de DMS, puede ver todas las consultas que ejecuta esta aplicación para recopilar métricas. Puede ejecutar el recopilador de datos de DMS en modo fuera de línea y, a continuación, revisar los datos recopilados en el servidor. Además, puede revisar los datos recopilados en el bucket de Amazon S3. Para obtener más información, consulte [¿Cómo funciona el recopilador de datos del DMS?](fa-collecting.md#fa-data-collectors-how-it-works).

# Optar por no utilizar sus datos para mejorar el servicio en AWS Database Migration Service
<a name="CHAP_Security.dataserviceimprovement"></a>

Puede optar por no utilizar sus datos para desarrollar y mejorar AWS DMS mediante la política de exclusión de AWS Organizations. Puede optar por que se le excluya incluso si AWS DMS no recopila actualmente dichos datos. Para obtener más información, consulte [Políticas de exclusión de los servicios de IA](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_ai-opt-out.html) en la *Guía del usuario de AWS Organizations*.

Actualmente, AWS Database Migration Service (AWS DMS) no recopila ninguno de los datos que procesa en su nombre. Para desarrollar y mejorar DMS y las funcionalidades de otros servicios de AWS , DMS puede recopilar dichos datos en el futuro. Actualizaremos esta página de documentación cuando DMS esté configurado para recopilar cualquier dato. La opción de no participar estará disponible en todo momento.

**nota**  
Para que pueda utilizar la política de exclusión voluntaria, AWS Organizations debe gestionar sus cuentas de AWS forma centralizada. Si no ha creado una organización para sus AWS cuentas, consulte [Administrar una organización con AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org.html) en la *Guía del AWS usuario de Organizations*.

La exclusión tiene los siguientes efectos:
+ AWS DMS elimina los datos que recopiló y almacenó con fines de mejora del servicio antes de excluirse (si los hubiera).
+ Una vez que se dé de baja, AWS DMS dejará de recopilar ni almacenar estos datos para mejorar el servicio.

# Inferencia interregional en AWS Database Migration Service
<a name="CHAP_Security.DataProtection.CrossRegionInference"></a>

 Algunas AWS Database Migration Service funciones utilizan la inferencia de IA entre regiones para seleccionar automáticamente la opción óptima Región de AWS dentro de su zona geográfica para procesar las solicitudes de inferencia. Este enfoque maximiza los recursos informáticos disponibles y la disponibilidad de los modelos, y está diseñado para proporcionar una experiencia de cliente de alta calidad. Con la inferencia entre regiones, obtendrá: 
+ Acceso a las funciones y funciones de IA más avanzadas
+ Un mayor rendimiento y resiliencia durante los periodos de alta demanda

 Las solicitudes de inferencia de IA entre regiones se mantienen dentro de la misma zona geográfica Regiones de AWS que la principal. Región de AWS Por ejemplo, una solicitud realizada desde un centro primario Región de AWS de EE. UU. se guarda Regiones de AWS en dicho país. Sus datos permanecen almacenados únicamente en su servidor principal Región de AWS. Todos los datos se transmiten cifrados a través de la red segura de Amazon. 

**nota**  
Amazon CloudWatch y AWS CloudTrail los registros no especifican Región de AWS en qué lugar se produce la inferencia de la IA.

## Inferencia entre regiones en la conversión de esquemas de DMS
<a name="CHAP_Security.DataProtection.CrossRegionInference.SchemaConversion"></a>

 Al utilizar las funciones de IA generativa en la conversión de esquemas de DMS, es posible que los fragmentos de código anonimizados y los metadatos del esquema relacionados se envíen a otros Regiones de AWS lugares de la misma zona geográfica para su procesamiento mediante IA. Tus datos de producción permanecen en tu servidor principal Región de AWS y nunca se accede a ellos ni se transmiten. 

**importante**  
 La inferencia entre regiones siempre está habilitada cuando se utilizan las funciones de IA generativa en la conversión de esquemas de DMS. Para que el procesamiento de conversión de esquemas siga siendo el principal Región de AWS, usa la conversión de esquemas con las funciones de IA generativa desactivadas. 

 Las funciones de IA generativa de DMS Schema Conversion están disponibles actualmente en un número limitado de regiones. En la siguiente tabla se describe a qué se pueden dirigir Regiones de AWS sus solicitudes en función de la principal. Región de AWS


| Primaria Región de AWS | Inferencia Regiones de AWS | 
| --- | --- | 
| Asia-Pacífico (Tokio) (ap-northeast-1) |  Asia-Pacífico (Tokio) (ap-northeast-1) Asia Pacific (Osaka) (ap-northeast-3)  | 
| Asia Pacific (Osaka) (ap-northeast-3) |  Asia-Pacífico (Tokio) (ap-northeast-1) Asia Pacific (Osaka) (ap-northeast-3)  | 
| Asia-Pacífico (Sídney) (ap-southeast-2) |  Asia-Pacífico (Sídney) (ap-southeast-2) Asia Pacífico (Melbourne) (ap-southeast-4)  | 
| Canadá (centro) (ca-central-1) |  Canadá (centro) (ca-central-1) Este de EE. UU. (Norte de Virginia) (us-east-1) Este de EE. UU. (Ohio) (us-east-2) Oeste de EE. UU. (Oregón) (us-west-2)  | 
| Europa (Fráncfort) (eu-central-1) |  Europa (Fráncfort) (eu-central-1) UE (Estocolmo) (eu-north-1) UE (Milán) (eu-south-1) Europa (España) (eu-south-2) Europa (Irlanda) (eu-west-1) UE (París) (eu-west-3)  | 
| Europa (Estocolmo) (eu-north-1) |  Europa (Fráncfort) (eu-central-1) UE (Estocolmo) (eu-north-1) UE (Milán) (eu-south-1) Europa (España) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (París) (eu-west-3)  | 
| Europa (Irlanda) (eu-west-1) |  Europa (Fráncfort) (eu-central-1) UE (Estocolmo) (eu-north-1) UE (Milán) (eu-south-1) Europa (España) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (París) (eu-west-3)  | 
| Europa (Londres) (eu-west-2) |  Europa (Fráncfort) (eu-central-1) UE (Estocolmo) (eu-north-1) UE (Milán) (eu-south-1) Europa (España) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (Londres) (eu-west-2) Europa (París) (eu-west-3)  | 
| Europa (París) (eu-west-3) |  Europa (Fráncfort) (eu-central-1) UE (Estocolmo) (eu-north-1) UE (Milán) (eu-south-1) Europa (España) (eu-south-2) Europa (Irlanda) (eu-west-1) Europa (París) (eu-west-3)  | 
| Este de EE. UU. (Norte de Virginia) (us-east-1) |  Este de EE. UU. (Norte de Virginia) (us-east-1) Este de EE. UU. (Ohio) (us-east-2) Oeste de EE. UU. (Oregón) (us-west-2)  | 
| Este de EE. UU. (Ohio) (us-east-2) |  Este de EE. UU. (Norte de Virginia) (us-east-1) Este de EE. UU. (Ohio) (us-east-2) Oeste de EE. UU. (Oregón) (us-west-2)  | 
| Oeste de EE. UU. (Oregón) (us-west-2) |  Este de EE. UU. (Norte de Virginia) (us-east-1) Este de EE. UU. (Ohio) (us-east-2) Oeste de EE. UU. (Oregón) (us-west-2)  | 

# Gestión de identidad y acceso para AWS Database Migration Service
<a name="security-iam"></a>

AWS Identity and Access Management (IAM) es una herramienta Servicio de AWS que ayuda al administrador a controlar de forma segura el acceso a AWS los recursos. Los administradores de IAM controlan quién puede *autenticarse (iniciar* sesión) y quién puede *autorizarse* (tener permisos) para usar los recursos. AWS DMS La IAM es una Servicio de AWS opción que puede utilizar sin coste adicional.

**Topics**
+ [Público](#security_iam_audience)
+ [Autenticación con identidades](#security_iam_authentication)
+ [Administración del acceso con políticas](#security_iam_access-manage)
+ [¿Cómo AWS Database Migration Service funciona con IAM](security_iam_service-with-iam.md)
+ [AWS Database Migration Service ejemplos de políticas basadas en la identidad](security_iam_id-based-policy-examples.md)
+ [Ejemplos de políticas basadas en recursos para AWS KMS](security_iam_resource-based-policy-examples.md)
+ [Uso de secretos para acceder a los puntos AWS Database Migration Service finales](security_iam_secretsmanager.md)
+ [Uso de roles vinculados a servicios para AWS DMS](using-service-linked-roles.md)
+ [Solución de problemas AWS Database Migration Service de identidad y acceso](security_iam_troubleshoot.md)
+ [Se necesitan permisos de IAM para utilizarlos AWS DMS](#CHAP_Security.IAMPermissions)
+ [Crear los roles de IAM para usarlos con AWS DMS](#CHAP_Security.APIRole)
+ [Prevención de la sustitución confusa entre servicios](cross-service-confused-deputy-prevention.md)
+ [AWS políticas gestionadas para AWS Database Migration Service](security-iam-awsmanpol.md)

## Público
<a name="security_iam_audience"></a>

La forma de usar AWS Identity and Access Management (IAM) varía según la función que desempeñes:
+ **Usuario del servicio:** solicite permisos al administrador si no puede acceder a las características (consulte [Solución de problemas AWS Database Migration Service de identidad y acceso](security_iam_troubleshoot.md)).
+ **Administrador del servicio:** determine el acceso de los usuarios y envíe las solicitudes de permiso (consulte [¿Cómo AWS Database Migration Service funciona con IAM](security_iam_service-with-iam.md)).
+ **Administrador de IAM**: escribe las políticas para administrar el acceso (consulte [AWS Database Migration Service ejemplos de políticas basadas en la identidad](security_iam_id-based-policy-examples.md)).

## Autenticación con identidades
<a name="security_iam_authentication"></a>

La autenticación es la forma en que inicias sesión AWS con tus credenciales de identidad. Debe autenticarse como usuario de Usuario raíz de la cuenta de AWS IAM o asumir una función de IAM.

Puede iniciar sesión como una identidad federada con las credenciales de una fuente de identidad, como AWS IAM Identity Center (IAM Identity Center), la autenticación de inicio de sesión único o las credenciales. Google/Facebook Para obtener más información sobre el inicio de sesión, consulte [Cómo iniciar sesión en la Cuenta de AWS](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) en la *Guía del usuario de AWS Sign-In *.

Para el acceso programático, AWS proporciona un SDK y una CLI para firmar criptográficamente las solicitudes. Para obtener más información, consulte [AWS Signature Version 4 para solicitudes de API](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) en la *Guía del usuario de IAM*.

### Cuenta de AWS usuario root
<a name="security_iam_authentication-rootuser"></a>

 Al crear un Cuenta de AWS, se comienza con una identidad de inicio de sesión denominada *usuario Cuenta de AWS raíz* que tiene acceso completo a todos Servicios de AWS los recursos. Se recomiendaencarecidamente que no utilice el usuario raíz para las tareas diarias. Para ver la lista completa de las tareas que requieren credenciales de usuario raíz, consulte [Tareas que requieren credenciales de usuario raíz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks) en la *Guía del usuario de IAM*. 

### Usuarios y grupos de IAM
<a name="security_iam_authentication-iamuser"></a>

Un *[usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html)* es una identidad con permisos específicos para una sola persona o aplicación. Recomendamos el uso de credenciales temporales en lugar de usuarios de IAM con credenciales de larga duración. Para obtener más información, consulte [Exigir a los usuarios humanos que utilicen la federación con un proveedor de identidad para acceder AWS mediante credenciales temporales](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp) en la Guía del *usuario de IAM*.

Un [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html) especifica un conjunto de usuarios de IAM y facilita la administración de los permisos para grupos grandes de usuarios. Para obtener más información, consulte [Casos de uso para usuarios de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/gs-identities-iam-users.html) en la *Guía del usuario de IAM*.

### Roles de IAM
<a name="security_iam_authentication-iamrole"></a>

Un *[Rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)* es una identidad con permisos específicos que proporciona credenciales temporales. Puede asumir un rol [cambiando de un rol de usuario a uno de IAM (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html) o llamando a una AWS CLI operación de AWS API. Para obtener más información, consulte [Métodos para asumir un rol](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage-assume.html) en la *Guía del usuario de IAM*.

Los roles de IAM son útiles para el acceso de usuario federado, los permisos de usuario de IAM temporales, el acceso entre cuentas, el acceso entre servicios y las aplicaciones que se ejecutan en Amazon EC2. Para obtener más información, consulte [Acceso a recursos entre cuentas en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) en la *Guía del usuario de IAM*.

## Administración del acceso con políticas
<a name="security_iam_access-manage"></a>

 AWS Para controlar el acceso, puede crear políticas y adjuntarlas a AWS identidades o recursos. Una política define los permisos cuando están asociados a una identidad o un recurso. AWS evalúa estas políticas cuando un director hace una solicitud. La mayoría de las políticas se almacenan AWS como documentos JSON. Para obtener más información sobre los documentos de políticas de JSON, consulte [Información general de políticas de JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json) en la *Guía del usuario de IAM*.

Mediante las políticas, los administradores especifican quién tiene acceso a qué, definiendo qué **entidad principal** puede realizar **acciones** sobre qué **recursos** y en qué **condiciones**.

De forma predeterminada, los usuarios y los roles no tienen permisos. Un administrador de IAM crea políticas de IAM y las agrega a roles, que los usuarios pueden asumir posteriormente. Las políticas de IAM definen permisos independientemente del método que se utilice para realizar la operación.

### Políticas basadas en identidades
<a name="security_iam_access-manage-id-based-policies"></a>

Las políticas basadas en identidad son documentos de política de permisos JSON que asocia a una identidad (usuario, grupo o rol). Estas políticas controlan qué acciones pueden realizar las identidades, en qué recursos y en qué condiciones. Para obtener más información sobre cómo crear una política basada en la identidad, consulte [Definición de permisos de IAM personalizados con políticas administradas por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la *Guía del usuario de IAM*.

Las políticas basadas en identidad pueden ser *políticas insertadas* (incrustadas directamente en una sola identidad) o *políticas administradas* (políticas independientes asociadas a varias identidades). Para obtener información sobre cómo elegir entre políticas administradas e insertadas, consulte [Selección entre políticas administradas y políticas insertadas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-choosing-managed-or-inline.html) en la *Guía del usuario de IAM*.

### Políticas basadas en recursos
<a name="security_iam_access-manage-resource-based-policies"></a>

Las políticas basadas en recursos son documentos de políticas JSON que se asocian a un recurso. Los ejemplos incluyen las *Políticas de confianza de roles* de IAM y las *Políticas de bucket* de Amazon S3. En los servicios que admiten políticas basadas en recursos, los administradores de servicios pueden utilizarlos para controlar el acceso a un recurso específico. Debe [especificar una entidad principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) en una política basada en recursos.

Las políticas basadas en recursos son políticas insertadas que se encuentran en ese servicio. No puedes usar políticas AWS gestionadas de IAM en una política basada en recursos.

### Listas de control de acceso () ACLs
<a name="security_iam_access-manage-acl"></a>

Las listas de control de acceso (ACLs) controlan qué responsables (miembros de la cuenta, usuarios o roles) tienen permisos para acceder a un recurso. ACLs son similares a las políticas basadas en recursos, aunque no utilizan el formato de documento de políticas JSON.

Amazon S3 y Amazon VPC son ejemplos de servicios compatibles. AWS WAF ACLs Para obtener más información ACLs, consulte la [descripción general de la lista de control de acceso (ACL)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html) en la *Guía para desarrolladores de Amazon Simple Storage Service*.

### Otros tipos de políticas
<a name="security_iam_access-manage-other-policies"></a>

AWS admite tipos de políticas adicionales que pueden establecer los permisos máximos otorgados por los tipos de políticas más comunes:
+ **Límites de permisos:** establecen los permisos máximos que una política basada en identidad puede conceder a una entidad de IAM. Para obtener más información, consulte [Límites de permisos para las entidades de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) en la *Guía del usuario de IAM*.
+ **Políticas de control de servicios (SCPs)**: especifican los permisos máximos para una organización o unidad organizativa en AWS Organizations. Para obtener más información, consulte [Políticas de control de servicios](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) en la *Guía del usuario de AWS Organizations *.
+ **Políticas de control de recursos (RCPs)**: establece los permisos máximos disponibles para los recursos de tus cuentas. Para obtener más información, consulte [Políticas de control de recursos (RCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) en la *Guía del AWS Organizations usuario*.
+ **Políticas de sesión:** políticas avanzadas que se pasan como parámetro cuando se crea una sesión temporal para un rol o un usuario federado. Para obtener más información, consulte [Políticas de sesión](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) en la *Guía del usuario de IAM*.

### Varios tipos de políticas
<a name="security_iam_access-manage-multiple-policies"></a>

Cuando se aplican varios tipos de políticas a una solicitud, los permisos resultantes son más complicados de entender. Para saber cómo se AWS determina si se debe permitir una solicitud cuando se trata de varios tipos de políticas, consulte la [lógica de evaluación de políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html) en la *Guía del usuario de IAM*.

# ¿Cómo AWS Database Migration Service funciona con IAM
<a name="security_iam_service-with-iam"></a>

Antes de utilizar IAM para gestionar el acceso AWS DMS, debe comprender las funciones de IAM disponibles para su uso. AWS DMS*Para obtener una visión general de cómo funcionan con IAM AWS DMS y otros AWS servicios, consulte los [AWS servicios que funcionan con IAM en la Guía del usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html).*

**Topics**
+ [AWS DMS políticas basadas en la identidad](#security_iam_service-with-iam-id-based-policies)
+ [AWS DMS políticas basadas en recursos](#security_iam_service-with-iam-resource-based-policies)
+ [Autorización basada en etiquetas AWS DMS](#security_iam_service-with-iam-tags)
+ [Funciones de IAM para AWS DMS](#security_iam_service-with-iam-roles)
+ [Administración de identidades y accesos para DMS Fleet Advisor](#fa-security-iam)

## AWS DMS políticas basadas en la identidad
<a name="security_iam_service-with-iam-id-based-policies"></a>

Con las políticas basadas en identidades de IAM, puede especificar las acciones y los recursos permitidos o denegados y también las condiciones en las que se permiten o deniegan las acciones. AWS DMS admite acciones, claves de condiciones y recursos específicos. Para obtener más información acerca de los elementos que utiliza en una política de JSON, consulte [Referencia de los elementos de las políticas de JSON de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) en la *Guía del usuario de IAM*.

### Acciones
<a name="security_iam_service-with-iam-id-based-policies-actions"></a>

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **entidad principal** puede realizar **acciones** en qué **recursos** y en qué **condiciones**.

El elemento `Action` de una política JSON describe las acciones que puede utilizar para conceder o denegar el acceso en una política. Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.

Las acciones políticas AWS DMS utilizan el siguiente prefijo antes de la acción:`dms:`. Por ejemplo, para conceder permiso a alguien para crear una tarea de replicación con la operación de AWS DMS `CreateReplicationTask` API, debes incluir la `dms:CreateReplicationTask` acción en su política. Las declaraciones de política deben incluir un `NotAction` elemento `Action` o. AWS DMS define su propio conjunto de acciones que describen las tareas que puede realizar con este servicio.

Para especificar varias acciones de  en una única instrucción, sepárelas con comas del siguiente modo.

```
"Action": [
      "dms:action1",
      "dms:action2"
```

Puede utilizar caracteres comodín (\$1) para especificar varias acciones . Por ejemplo, para especificar todas las acciones que comiencen con la palabra `Describe`, incluya la siguiente acción.

```
"Action": "dms:Describe*"
```



Para ver una lista de AWS DMS acciones, consulte las [acciones definidas por AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-actions-as-permissions) en la *Guía del usuario de IAM*.

### Recursos
<a name="security_iam_service-with-iam-id-based-policies-resources"></a>

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **entidad principal** puede realizar **acciones** en qué **recursos** y en qué **condiciones**.

El elemento `Resource` de la política JSON especifica el objeto u objetos a los que se aplica la acción. Como práctica recomendada, especifique un recurso utilizando el [Nombre de recurso de Amazon (ARN)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html). En el caso de las acciones que no admiten permisos por recurso, utilice un carácter comodín (\$1) para indicar que la instrucción se aplica a todos los recursos.

```
"Resource": "*"
```



AWS DMS funciona con los siguientes recursos:
+ Certificados
+ Puntos de conexión
+ Suscripciones de eventos
+ Instancias de replicación
+ Grupos de subred (seguridad) de replicación
+ Tareas de replicación

El recurso o los recursos necesarios AWS DMS dependen de la acción o las acciones que se invoquen. Necesita una política que permita estas acciones en el recurso o los recursos asociados especificados por el recurso ARNs.

Por ejemplo, un recurso de AWS DMS punto final tiene el siguiente ARN:

```
arn:${Partition}:dms:${Region}:${Account}:endpoint/${InstanceId}
```

Para obtener más información sobre el formato de ARNs, consulte [Nombres de recursos de Amazon (ARNs) y espacios de nombres AWS de servicios](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).

Por ejemplo, para especificar la instancia de punto de enlace de `1A2B3C4D5E6F7G8H9I0J1K2L3M` para la región `us-east-2` en la instrucción, utilice el siguiente ARN.

```
"Resource": "arn:aws:dms:us-east-2:987654321098:endpoint/1A2B3C4D5E6F7G8H9I0J1K2L3M"
```

Para especificar todos los puntos de enlace que pertenecen a una cuenta específica, utilice el carácter comodín (\$1):

```
"Resource": "arn:aws:dms:us-east-2:987654321098:endpoint/*"
```

Algunas AWS DMS acciones, como las de creación de recursos, no se pueden realizar en un recurso específico. En dichos casos, debe utilizar el carácter comodín (\$1).

```
"Resource": "*"
```

Algunas acciones AWS DMS de la API implican varios recursos. Por ejemplo, `StartReplicationTask` inicia y conecta una tarea de replicación a dos recursos de punto de conexión de la base de datos, un origen y un destino, por lo que un usuario de IAM debe tener permisos para leer el punto de conexión de origen y escribir en el punto de conexión de destino. Para especificar varios recursos en una sola sentencia, sepárelos ARNs con comas. 

```
"Resource": [
      "resource1",
      "resource2" ]
```

Para obtener más información sobre cómo controlar el acceso a AWS DMS los recursos mediante políticas, consulte[Uso de nombres de recursos para controlar el acceso](CHAP_Security.FineGrainedAccess.md#CHAP_Security.FineGrainedAccess.ResourceName). Para ver una lista de los tipos de AWS DMS recursos y sus correspondientes ARNs, consulte [los recursos definidos por AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-resources-for-iam-policies) en la *Guía del usuario de IAM*. Para obtener información sobre las acciones con las que puede especificar el ARN de cada recurso, consulte [Acciones definidas por AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-actions-as-permissions).

### Claves de condición
<a name="security_iam_service-with-iam-id-based-policies-conditionkeys"></a>

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué **entidad principal** puede realizar **acciones** en qué **recursos** y en qué **condiciones**.

El elemento `Condition` especifica cuándo se ejecutan las instrucciones en función de criterios definidos. Puede crear expresiones condicionales que utilizan [operadores de condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html), tales como igual o menor que, para que la condición de la política coincida con los valores de la solicitud. Para ver todas las claves de condición AWS globales, consulte las claves de [contexto de condición AWS globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) en la *Guía del usuario de IAM*.

AWS DMS define su propio conjunto de claves de condición y también admite el uso de algunas claves de condición globales. Para ver todas las claves de condición AWS globales, consulte las claves de [contexto de condición AWS globales](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) en la *Guía del usuario de IAM*.



AWS DMS define un conjunto de etiquetas estándar que puede utilizar en sus claves de condición y también le permite definir sus propias etiquetas personalizadas. Para obtener más información, consulte [Uso de etiquetas para controlar el acceso](CHAP_Security.FineGrainedAccess.md#CHAP_Security.FineGrainedAccess.Tags).

Para ver una lista de claves de AWS DMS condición, consulte las [claves de condición AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-policy-keys) en la *Guía del usuario de IAM*. Para obtener información acerca de las acciones y los recursos con los que puede utilizar una clave de condición, consulte [Acciones definidas por AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-actions-as-permissions) y [recursos definidos por AWS Database Migration Service](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awsdatabasemigrationservice.html#awsdatabasemigrationservice-resources-for-iam-policies).

### Ejemplos
<a name="security_iam_service-with-iam-id-based-policies-examples"></a>



Para ver ejemplos de políticas AWS DMS basadas en la identidad, consulte. [AWS Database Migration Service ejemplos de políticas basadas en la identidad](security_iam_id-based-policy-examples.md)

## AWS DMS políticas basadas en recursos
<a name="security_iam_service-with-iam-resource-based-policies"></a>

Las políticas basadas en recursos son documentos de políticas de JSON que especifican qué acciones puede realizar un director específico en un AWS DMS recurso determinado y en qué condiciones. AWS DMS admite políticas de permisos basadas en recursos para las claves de AWS KMS cifrado que se crean para cifrar los datos migrados a los puntos finales de destino compatibles. Los puntos de conexión de destino incluyen Amazon Redshift y Amazon S3. Mediante el uso de políticas basadas en recursos, puede conceder el permiso para utilizar estas claves de cifrado en otras cuentas en cada punto de enlace de destino.

Para habilitar el acceso entre cuentas, puede especificar toda una cuenta o entidades de IAM de otra cuenta como la [entidad principal de una política basada en recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html). Añadir a una política en función de recursos una entidad principal entre cuentas es solo una parte del establecimiento de una relación de confianza. Si el principal y el recurso están en AWS cuentas diferentes, también debe conceder permiso a la entidad principal para acceder al recurso. Conceda permiso asociando a la entidad una política basada en identidades. Sin embargo, si la política basada en recursos concede el acceso a una entidad principal de la misma cuenta, no es necesaria una política basada en identidad adicional. Para más información, consulte [Cómo los roles de IAM difieren de las políticas basadas en recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html) en la *Guía del usuario de IAM*.

El AWS DMS servicio solo admite un tipo de política basada en recursos denominada política de *claves*, que se adjunta a una clave de AWS KMS cifrado. Esta política define qué entidades principales (cuentas, usuarios, roles y usuarios federados) pueden cifrar los datos migrados en el punto de enlace de destino admitido.

Para obtener información sobre cómo asociar una política basada en recursos a una clave de cifrado que cree para los puntos de enlace de destino compatibles, consulte [Creación y uso de AWS KMS claves para cifrar los datos de destino de Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys) y [Creación de AWS KMS claves para cifrar los objetos de destino de Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

### Ejemplos
<a name="security_iam_service-with-iam-resource-based-policies-examples"></a>



Para ver ejemplos de políticas AWS DMS basadas en recursos, consulte. [Ejemplos de políticas basadas en recursos para AWS KMS](security_iam_resource-based-policy-examples.md)

## Autorización basada en etiquetas AWS DMS
<a name="security_iam_service-with-iam-tags"></a>

Puede adjuntar etiquetas a AWS DMS los recursos o pasarles etiquetas en una solicitud AWS DMS. Para controlar el acceso en función de las etiquetas, proporciona la información de las etiquetas en el [elemento de condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) de una política mediante la clave de `aws:TagKeys` condición `dms:ResourceTag/key-name``aws:RequestTag/key-name`, o. AWS DMS define un conjunto de etiquetas estándar que puede usar en sus claves de condición y también le permite definir sus propias etiquetas personalizadas. Para obtener más información, consulte [Uso de etiquetas para controlar el acceso](CHAP_Security.FineGrainedAccess.md#CHAP_Security.FineGrainedAccess.Tags).

Para obtener un ejemplo de política basada en identidad que limita el acceso a un recurso basado en etiquetas, consulte [Acceder a AWS DMS los recursos en función de las etiquetas](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-access-resources-tags).

## Funciones de IAM para AWS DMS
<a name="security_iam_service-with-iam-roles"></a>

Un [rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) es una entidad de tu AWS cuenta que tiene permisos específicos.

### Usar credenciales temporales con AWS DMS
<a name="security_iam_service-with-iam-roles-tempcreds"></a>

Puede utilizar credenciales temporales para iniciar sesión con identidad federada, asumir un rol de IAM o asumir un rol de acceso entre cuentas. Para obtener credenciales de seguridad temporales, puede llamar a operaciones de AWS STS API como [AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)o [GetFederationToken](https://docs.aws.amazon.com/STS/latest/APIReference/API_GetFederationToken.html). 

AWS DMS admite el uso de credenciales temporales. 

### Roles vinculados a servicios
<a name="security_iam_service-with-iam-roles-service-linked"></a>

Los [roles vinculados a un servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) permiten a AWS los servicios acceder a los recursos de otros servicios para completar una acción en tu nombre. Los roles vinculados a servicios aparecen en la cuenta de IAM y son propiedad del servicio. Un administrador de IAM puede ver, pero no editar, los permisos de los roles vinculados a servicios.

Para obtener más información sobre la creación o la administración de funciones AWS DMS vinculadas a un servicio, consulte. [Cómo utilizar roles vinculados a servicios](using-service-linked-roles.md)

### Roles de servicio
<a name="security_iam_service-with-iam-roles-service"></a>

Esta característica permite que un servicio asuma un [rol de servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-role) en su nombre. Este rol permite que el servicio obtenga acceso a los recursos de otros servicios para completar una acción en su nombre. Los roles de servicio aparecen en su cuenta de IAM y son propiedad de la cuenta. Esto significa que un administrador de IAM puede cambiar los permisos de este rol. Sin embargo, hacerlo podría deteriorar la funcionalidad del servicio.

AWS DMS admite dos tipos de funciones de servicio que debe crear para utilizar determinados puntos finales de origen o destino:
+ Funciones con permisos que permiten al AWS DMS acceder a los siguientes puntos finales de origen y destino (o a sus recursos):
  + Amazon DynamoDB como destino: para obtener más información, consulte [Requisitos previos para usar DynamoDB como objetivo para AWS Database Migration Service](CHAP_Target.DynamoDB.md#CHAP_Target.DynamoDB.Prerequisites).
  + OpenSearch como destino: para obtener más información, consulte. [Requisitos previos para utilizar Amazon OpenSearch Service como objetivo para AWS Database Migration Service](CHAP_Target.Elasticsearch.md#CHAP_Target.Elasticsearch.Prerequisites)
  + Amazon Kinesis como destino: para obtener más información, consulte [Requisitos previos para utilizar una transmisión de datos de Kinesis como destino para AWS Database Migration Service](CHAP_Target.Kinesis.md#CHAP_Target.Kinesis.Prerequisites).
  + Amazon Redshift como destino: debe crear el rol especificado solo para crear una clave de cifrado de KMS personalizada para cifrar los datos de destino o para especificar un bucket de S3 personalizado para almacenar tareas intermedias. Para obtener más información, consulte [Creación y uso de AWS KMS claves para cifrar los datos de destino de Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys) o [Configuración del bucket de Amazon S3](CHAP_Target.Redshift.md#CHAP_Target.Redshift.EndpointSettings.S3Buckets).
  + Amazon S3 como origen o como destino: para obtener más información, consulte [Requisitos previos al utilizar Amazon S3 como fuente de AWS DMS](CHAP_Source.S3.md#CHAP_Source.S3.Prerequisites) o [Requisitos previos para utilizar Amazon S3 como un destino](CHAP_Target.S3.md#CHAP_Target.S3.Prerequisites).

  Por ejemplo, para leer datos de un punto de enlace de origen S3 o para insertar datos a un punto de enlace de destino S3, debe crear un rol de servicio como requisito previo para acceder a S3 para cada una de estas operaciones de punto de enlace. 
+ Funciones con permisos necesarios para usar la consola de AWS DMS, la API de AWS DMS AWS CLI y las dos funciones de IAM que debe crear son y. `dms-vpc-role` `dms-cloudwatch-logs-role` Si utiliza Amazon Redshift como base de datos de destino, también debe crear y añadir el rol de IAM `dms-access-for-endpoint` a su cuenta. AWS Para obtener más información, consulte [Crear los roles de IAM para usarlos con AWS DMS](security-iam.md#CHAP_Security.APIRole).

### Elegir un rol de IAM en AWS DMS
<a name="security_iam_service-with-iam-roles-choose"></a>

Si utiliza la consola del AWS DMS AWS CLI o la API del AWS DMS para la migración de la base de datos, debe añadir determinadas funciones de IAM a su AWS cuenta antes de poder utilizar las funciones del DMS. AWS Dos de los tres roles son `dms-vpc-role` y `dms-cloudwatch-logs-role`. Si utiliza Amazon Redshift como base de datos de destino, también debe añadir el rol de IAM `dms-access-for-endpoint` a su cuenta. AWS Para obtener más información, consulte [Crear los roles de IAM para usarlos con AWS DMS](security-iam.md#CHAP_Security.APIRole).

## Administración de identidades y accesos para DMS Fleet Advisor
<a name="fa-security-iam"></a>

Con las políticas basadas en identidades de IAM, puede especificar las acciones permitidas o denegadas, así como los recursos y también las condiciones en las que se permiten o deniegan las acciones. DMS Fleet Advisor admite acciones, recursos y claves de condición específicos. Para obtener más información acerca de los elementos que utiliza en una política de JSON, consulte [Referencia de los elementos de las políticas de JSON de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements.html) en la *Guía del usuario de IAM*. 

DMS Fleet Advisor utiliza roles de IAM para acceder a Amazon Simple Storage Service. Un [rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) es una entidad de su AWS cuenta que tiene permisos específicos. Para obtener más información, consulte [Crear recursos de IAM](fa-resources.md#fa-resources-iam). 

# AWS Database Migration Service ejemplos de políticas basadas en la identidad
<a name="security_iam_id-based-policy-examples"></a>

De forma predeterminada, los usuarios y los roles de IAM no tienen permiso para crear, ver ni modificar recursos de AWS DMS . Tampoco pueden realizar tareas con la API Consola de administración de AWS AWS CLI, o AWS . Un administrador de IAM debe crear políticas de IAM que concedan permisos a los usuarios y a los roles para realizar operaciones de la API concretas en los recursos especificados que necesiten. El administrador debe adjuntar esas políticas a los usuarios o grupos de IAM que necesiten esos permisos.

Para obtener más información acerca de cómo crear una política basada en identidad de IAM con estos documentos de políticas de JSON de ejemplo, consulte [Creación de políticas en la pestaña JSON](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html#access_policies_create-json-editor) en la *Guía del usuario de IAM*.

**Topics**
+ [Prácticas recomendadas relativas a políticas](#security_iam_service-with-iam-policy-best-practices)
+ [Uso de la consola AWS DMS](#security_iam_id-based-policy-examples-console)
+ [Cómo permitir a los usuarios consultar sus propios permisos](#security_iam_id-based-policy-examples-view-own-permissions)
+ [Acceso a un bucket de Amazon S3](#security_iam_id-based-policy-examples-access-one-bucket)
+ [Acceder a AWS DMS los recursos en función de las etiquetas](#security_iam_id-based-policy-examples-access-resources-tags)

## Prácticas recomendadas relativas a políticas
<a name="security_iam_service-with-iam-policy-best-practices"></a>

Las políticas basadas en la identidad determinan si alguien puede crear AWS DMS recursos de tu cuenta, acceder a ellos o eliminarlos. Estas acciones pueden generar costos adicionales para su Cuenta de AWS. Siga estas directrices y recomendaciones al crear o editar políticas basadas en identidades:
+ **Comience con las políticas AWS administradas y avance hacia los permisos con privilegios mínimos: para empezar a conceder permisos** a sus usuarios y cargas de trabajo, utilice las *políticas AWS administradas* que otorgan permisos para muchos casos de uso comunes. Están disponibles en su. Cuenta de AWS Le recomendamos que reduzca aún más los permisos definiendo políticas administradas por el AWS cliente que sean específicas para sus casos de uso. Con el fin de obtener más información, consulte las [políticas administradas por AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#aws-managed-policies) o las [políticas administradas por AWS para funciones de tarea](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) en la *Guía de usuario de IAM*.
+ **Aplique permisos de privilegio mínimo**: cuando establezca permisos con políticas de IAM, conceda solo los permisos necesarios para realizar una tarea. Para ello, debe definir las acciones que se pueden llevar a cabo en determinados recursos en condiciones específicas, también conocidos como *permisos de privilegios mínimos*. Con el fin de obtener más información sobre el uso de IAM para aplicar permisos, consulte [Políticas y permisos en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) en la *Guía del usuario de IAM*.
+ **Utilice condiciones en las políticas de IAM para restringir aún más el acceso**: puede agregar una condición a sus políticas para limitar el acceso a las acciones y los recursos. Por ejemplo, puede escribir una condición de políticas para especificar que todas las solicitudes deben enviarse utilizando SSL. También puedes usar condiciones para conceder el acceso a las acciones del servicio si se utilizan a través de una acción específica Servicio de AWS, por ejemplo CloudFormation. Para obtener más información, consulte [Elementos de la política de JSON de IAM: Condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) en la *Guía del usuario de IAM*.
+ **Utiliza el analizador de acceso de IAM para validar las políticas de IAM con el fin de garantizar la seguridad y funcionalidad de los permisos**: el analizador de acceso de IAM valida políticas nuevas y existentes para que respeten el lenguaje (JSON) de las políticas de IAM y las prácticas recomendadas de IAM. El analizador de acceso de IAM proporciona más de 100 verificaciones de políticas y recomendaciones procesables para ayudar a crear políticas seguras y funcionales. Para más información, consulte [Validación de políticas con el Analizador de acceso de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-validation.html) en la *Guía del usuario de IAM*.
+ **Requerir autenticación multifactor (MFA**): si tiene un escenario que requiere usuarios de IAM o un usuario raíz en Cuenta de AWS su cuenta, active la MFA para mayor seguridad. Para exigir la MFA cuando se invoquen las operaciones de la API, añada condiciones de MFA a sus políticas. Para más información, consulte [Acceso seguro a la API con MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_configure-api-require.html) en la *Guía del usuario de IAM*.

Para obtener más información sobre las prácticas recomendadas de IAM, consulte [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) en la *Guía del usuario de IAM*.

## Uso de la consola AWS DMS
<a name="security_iam_id-based-policy-examples-console"></a>

La siguiente política le da acceso al AWS DMS, incluida la consola del AWS DMS, y también especifica los permisos para determinadas acciones necesarias desde otros servicios de Amazon, como Amazon EC2.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
     "Statement": [
    {
        "Effect": "Allow",
        "Action": "dms:*",
        "Resource": "arn:aws:dms:*:123456789012:*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "kms:ListAliases",
            "kms:DescribeKey"
        ],
        "Resource": "arn:aws:kms:*:123456789012:key/*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "iam:GetRole",
            "iam:CreateRole",
            "iam:AttachRolePolicy"
        ],
        "Resource": "arn:aws:iam::123456789012:role/*"
    },
    {
        "Effect": "Allow",
        "Action": "iam:PassRole",
        "Resource": "arn:aws:iam::123456789012:role/*",
        "Condition": {
            "StringEquals": {
                "iam:PassedToService": "dms.amazonaws.com"
            }
        }
    },
    {
        "Effect": "Allow",
        "Action": [
            "ec2:DescribeVpcs",
            "ec2:DescribeInternetGateways",
            "ec2:DescribeAvailabilityZones",
            "ec2:DescribeSubnets",
            "ec2:DescribeSecurityGroups",
            "ec2:ModifyNetworkInterfaceAttribute",
            "ec2:CreateNetworkInterface",
            "ec2:DeleteNetworkInterface"
        ],
        "Resource": "*"
    },
    {
        "Effect": "Allow",
        "Action": [
            "cloudwatch:Get*",
            "cloudwatch:List*"
        ],
    "Resource": "*"
    },
    {
    "Effect": "Allow",
    "Action": [
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams",
        "logs:FilterLogEvents",
        "logs:GetLogEvents"
        ],
    "Resource": "arn:aws:logs:*:123456789012:*"
    }
   ]
}
```

------

Un desglose de estos permisos puede ayudarle a comprender mejor por qué es necesario cada uno de ellos para usar la consola.

La siguiente sección es necesaria para permitir al usuario enumerar sus claves de AWS KMS y alias disponibles para su visualización en la consola. Esta entrada no es necesaria si conoce el nombre de recurso de Amazon (ARN) para la clave de KMS y está utilizando solo los AWS Command Line Interface (AWS CLI).

```
{
            "Effect": "Allow",
            "Action": [
                "kms:ListAliases", 
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La sección siguiente es necesaria para determinados tipos de punto de enlace que requieren que se pase un ARN del rol con el punto de enlace. Además, si los AWS DMS roles necesarios no se crean con antelación, la AWS DMS consola tiene la capacidad de crear el rol. Si todas las funciones se configuran con antelación, todo eso es necesario en `iam:GetRole` e `iam:PassRole`. Para obtener más información acerca de los roles, consulte [Crear los roles de IAM para usarlos con AWS DMS](security-iam.md#CHAP_Security.APIRole).

```
{
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:PassRole",
                "iam:CreateRole",
                "iam:AttachRolePolicy"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La siguiente sección es obligatoria porque AWS DMS necesita crear la instancia Amazon EC2 y configurar la red para la instancia de replicación que se crea. Estos recursos existen en la cuenta del cliente, por lo que la capacidad para realizar estas acciones en nombre del cliente es necesaria.

```
{
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeVpcs",
                "ec2:DescribeInternetGateways",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups",
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:CreateNetworkInterface",
                "ec2:DeleteNetworkInterface"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La siguiente sección es necesaria para permitir que el usuario pueda ver las métricas de instancia de replicación.

```
{
            "Effect": "Allow",
            "Action": [
                "cloudwatch:Get*",
                "cloudwatch:List*"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

Esta sección es necesaria para permitir que el usuario vea los registros de replicación.

```
{
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups",
                "logs:DescribeLogStreams",
                "logs:FilterLogEvents",
                "logs:GetLogEvents"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

Si utiliza la consola de AWS DMS, la AWS Command Line Interface (AWS CLI) o la API de AWS DMS para la migración, tendrá que añadir varias funciones a su cuenta. Para obtener más información sobre la creación de estos roles, consulte [Crear los roles de IAM para usarlos con AWS DMS](security-iam.md#CHAP_Security.APIRole).

Para obtener más información sobre los requisitos para usar esta política para acceder al AWS DMS, consulte. [Se necesitan permisos de IAM para utilizarlos AWS DMS](security-iam.md#CHAP_Security.IAMPermissions)

## Cómo permitir a los usuarios consultar sus propios permisos
<a name="security_iam_id-based-policy-examples-view-own-permissions"></a>

En este ejemplo, se muestra cómo podría crear una política que permita a los usuarios de IAM ver las políticas administradas e insertadas que se asocian a la identidad de sus usuarios. Esta política incluye permisos para completar esta acción en la consola o mediante programación mediante la AWS CLI API o. AWS 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ViewOwnUserInfo",
            "Effect": "Allow",
            "Action": [
                "iam:GetUserPolicy",
                "iam:ListGroupsForUser",
                "iam:ListAttachedUserPolicies",
                "iam:ListUserPolicies",
                "iam:GetUser"
            ],
            "Resource": ["arn:aws:iam::*:user/${aws:username}"]
        },
        {
            "Sid": "NavigateInConsole",
            "Effect": "Allow",
            "Action": [
                "iam:GetGroupPolicy",
                "iam:GetPolicyVersion",
                "iam:GetPolicy",
                "iam:ListAttachedGroupPolicies",
                "iam:ListGroupPolicies",
                "iam:ListPolicyVersions",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        }
    ]
}
```

## Acceso a un bucket de Amazon S3
<a name="security_iam_id-based-policy-examples-access-one-bucket"></a>

AWS DMS usa buckets de Amazon S3 como almacenamiento intermedio para la migración de bases de datos. Por lo general, AWS DMS administra los buckets S3 predeterminados para este propósito. Sin embargo, en algunos casos, especialmente cuando utiliza la API del DMS AWS CLI o la API, el AWS AWS DMS le permite especificar su propio depósito de S3 en su lugar. Por ejemplo, puede especificar su propio bucket de S3 para migrar datos a un punto de conexión de destino de Amazon Redshift. En este caso, debe crear un rol con permisos basados en la política AWS administrada`AmazonDMSRedshiftS3Role`.

En el ejemplo siguiente se muestra una versión de la política `AmazonDMSRedshiftS3Role`. Permite a AWS DMS conceder a un usuario de IAM de su AWS cuenta acceso a uno de sus buckets de Amazon S3. También permite al usuario agregar, actualizar y eliminar objetos.

Además de conceder los permisos `s3:PutObject`, `s3:GetObject` y `s3:DeleteObject` al usuario, la política también concede los permisos `s3:ListAllMyBuckets`, `s3:GetBucketLocation` y `s3:ListBucket`. Estos son los permisos adicionales que requiere la consola. Otros permisos permiten a AWS DMS gestionar el ciclo de vida del bucket. Además, se requiere la acción `s3:GetObjectAcl` para poder copiar objetos.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:CreateBucket",
                "s3:ListBucket",
                "s3:DeleteBucket",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObject",
                "s3:GetObjectVersion",
                "s3:GetBucketPolicy",
                "s3:PutBucketPolicy",
                "s3:GetBucketAcl",
                "s3:PutBucketVersioning",
                "s3:GetBucketVersioning",
                "s3:PutLifecycleConfiguration",
                "s3:GetLifecycleConfiguration",
                "s3:DeleteBucketPolicy"
            ],
            "Resource": "arn:aws:s3:::dms-*"
        }
    ]
}
```

------

Para obtener más información sobre cómo crear un rol basado en esta política, consulte [Configuración del bucket de Amazon S3](CHAP_Target.Redshift.md#CHAP_Target.Redshift.EndpointSettings.S3Buckets).

## Acceder a AWS DMS los recursos en función de las etiquetas
<a name="security_iam_id-based-policy-examples-access-resources-tags"></a>

Puede utilizar las condiciones de su política basada en identidad para controlar el acceso a los recursos de AWS DMS basados en etiquetas. En este ejemplo, se muestra cómo se puede crear una política que permita el acceso a todos los puntos finales del AWS DMS. Sin embargo, los permisos solo se conceden si la etiqueta de base de datos de puntos de enlace `Owner` tiene el valor del nombre de usuario de dicho usuario.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "dms:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "dms:endpoint-tag/Owner": "${aws:username}"
        }
      }
    }
  ]
}
```

------

También puede asociar esta política al usuario de IAM en su cuenta. Si un usuario llamado `richard-roe` intenta acceder a un AWS DMS punto final, la base de datos del punto final debe estar etiquetada `Owner=richard-roe` o. `owner=richard-roe` De lo contrario, se deniega el acceso a este usuario. La clave de la etiqueta de condición `Owner` coincide con los nombres de las claves de condición `Owner` y `owner` porque no distinguen entre mayúsculas y minúsculas. Para obtener más información, consulte [Elementos de la política de JSON de IAM: Condición](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition.html) en la *Guía del usuario de IAM*.

# Ejemplos de políticas basadas en recursos para AWS KMS
<a name="security_iam_resource-based-policy-examples"></a>

AWS El DMS le permite crear claves de AWS KMS cifrado personalizadas para cifrar los datos de los puntos finales de destino compatibles. Para obtener información sobre cómo crear y asociar una política de clave a la clave de cifrado que cree para el cifrado de datos de destino compatible, consulte [Creación y uso de AWS KMS claves para cifrar los datos de destino de Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys) y [Creación de AWS KMS claves para cifrar los objetos de destino de Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

**Topics**
+ [Una política de clave de AWS KMS cifrado personalizada para cifrar los datos de destino de Amazon Redshift](#security_iam_resource-based-policy-examples-custom-rs-key-policy)
+ [Una política de clave de AWS KMS cifrado personalizada para cifrar los datos de destino de Amazon S3](#security_iam_resource-based-policy-examples-custom-s3-key-policy)

## Una política de clave de AWS KMS cifrado personalizada para cifrar los datos de destino de Amazon Redshift
<a name="security_iam_resource-based-policy-examples-custom-rs-key-policy"></a>

En el ejemplo siguiente se muestra el JSON para la política de claves creada para una clave de cifrado de AWS KMS que se crea para cifrar los datos de destino de Amazon Redshift.

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

****  

```
{
  "Id": "key-consolepolicy-3",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Enable IAM User Permissions",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:root"
        ]
      },
      "Action": "kms:*",
      "Resource": "*"
    },
    {
      "Sid": "Allow access for Key Administrators",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:role/Admin"
        ]
      },
      "Action": [
        "kms:Create*",
        "kms:Describe*",
        "kms:Enable*",
        "kms:List*",
        "kms:Put*",
        "kms:Update*",
        "kms:Revoke*",
        "kms:Disable*",
        "kms:Get*",
        "kms:Delete*",
        "kms:TagResource",
        "kms:UntagResource",
        "kms:ScheduleKeyDeletion",
        "kms:CancelKeyDeletion"
      ],
      "Resource": "*"
    },
    {
      "Sid": "Allow use of the key",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:role/DMS-Redshift-endpoint-access-role"
        ]
      },
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey"
      ],
      "Resource": "*"
    },
    {
      "Sid": "Allow attachment of persistent resources",
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::987654321098:role/DMS-Redshift-endpoint-access-role"
        ]
      },
      "Action": [
        "kms:CreateGrant",
        "kms:ListGrants",
        "kms:RevokeGrant"
      ],
      "Resource": "*",
      "Condition": {
        "Bool": {
          "kms:GrantIsForAWSResource": true
        }
      }
    }
  ]
}
```

------

Aquí puede ver dónde hace referencia la política de claves al rol para acceder a los datos de punto de conexión de destino de Amazon Redshift que creó antes de crear la clave. En el ejemplo, es `DMS-Redshift-endpoint-access-role`. También puede ver las diferentes acciones de clave permitidas para los diferentes principales (usuarios y roles). Por ejemplo, cualquier usuario con `DMS-Redshift-endpoint-access-role` puede cifrar, descifrar y volver a cifrar los datos de destino. Este usuario también puede generar claves de datos para exportarlas a fin de cifrar los datos del exterior. AWS KMS También pueden devolver información detallada sobre una AWS KMS clave, como la clave que acaba de crear. Además, dicho usuario puede administrar los datos adjuntos a los recursos de AWS , como el punto de conexión de destino.

## Una política de clave de AWS KMS cifrado personalizada para cifrar los datos de destino de Amazon S3
<a name="security_iam_resource-based-policy-examples-custom-s3-key-policy"></a>

En el ejemplo siguiente se muestra el JSON para la política de claves creada para una clave de cifrado de AWS KMS que se crea para cifrar los datos de destino de Amazon S3.

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

****  

```
{
    "Id": "key-consolepolicy-3",
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Enable IAM User Permissions",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:root"
                ]
            },
            "Action": "kms:*",
            "Resource": "*"
        },
        {
            "Sid": "Allow access for Key Administrators",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:role/Admin"
                ]
            },
            "Action": [
                "kms:Create*",
                "kms:Describe*",
                "kms:Enable*",
                "kms:List*",
                "kms:Put*",
                "kms:Update*",
                "kms:Revoke*",
                "kms:Disable*",
                "kms:Get*",
                "kms:Delete*",
                "kms:TagResource",
                "kms:UntagResource",
                "kms:ScheduleKeyDeletion",
                "kms:CancelKeyDeletion"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:role/DMS-S3-endpoint-access-role"
                ]
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
        {
            "Sid": "Allow attachment of persistent resources",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::987654321098:role/DMS-S3-endpoint-access-role"
                ]
            },
            "Action": [
                "kms:CreateGrant",
                "kms:ListGrants",
                "kms:RevokeGrant"
            ],
            "Resource": "*",
            "Condition": {
                "Bool": {
                    "kms:GrantIsForAWSResource": true
                }
            }
        }
    ]
}
```

------

Aquí puede ver dónde hace referencia la política de claves al rol para acceder a los datos de punto de conexión de destino de Amazon S3 que creó antes de crear la clave. En el ejemplo, es `DMS-S3-endpoint-access-role`. También puede ver las diferentes acciones de clave permitidas para los diferentes principales (usuarios y roles). Por ejemplo, cualquier usuario con `DMS-S3-endpoint-access-role` puede cifrar, descifrar y volver a cifrar los datos de destino. Este usuario también puede generar claves de datos para exportarlas a fin de cifrar los datos del exterior. AWS KMS También pueden devolver información detallada sobre una AWS KMS clave, como la clave que acaba de crear. Además, dicho usuario puede administrar los datos adjuntos a los recursos de AWS , como el punto de conexión de destino.

# Uso de secretos para acceder a los puntos AWS Database Migration Service finales
<a name="security_iam_secretsmanager"></a>

Pues AWS DMS, un *secreto* es una clave cifrada que se puede utilizar para representar un conjunto de credenciales de usuario para autenticar, mediante una *autenticación secreta*, la conexión a la base de datos de un punto final de AWS DMS origen o destino compatible. En el caso de un terminal de Oracle que también utilice Oracle Automatic Storage Management (ASM), se AWS DMS requiere un secreto adicional que represente las credenciales del usuario para acceder a Oracle ASM.

Puede crear el secreto o los secretos necesarios para la autenticación secreta mediante un servicio para crear AWS Secrets Manager, almacenar y recuperar de forma segura las credenciales de acceso a las aplicaciones, los servicios y los recursos de TI en la nube y en las instalaciones. AWS DMS Esto incluye la posibilidad de rotar automáticamente y de forma periódica el valor secreto cifrado sin su intervención, lo que proporciona un nivel adicional de seguridad para las credenciales. La activación de la rotación del valor secreto AWS Secrets Manager también garantiza que esta rotación del valor secreto se produzca sin ningún efecto en ninguna migración de bases de datos que se base en el secreto. Para autenticar de forma secreta una conexión a una base de datos de punto de conexión, cree un secreto cuya identidad o ARN asigne a `SecretsManagerSecretId`, que incluya en la configuración del punto de conexión. Para autenticar de forma secreta Oracle ASM como parte de un punto de conexión de Oracle, cree un secreto cuya identidad o ARN asigne a `SecretsManagerOracleAsmSecretId`, que incluya también en la configuración del punto de conexión.

**nota**  
No puede utilizar las credenciales maestras administradas por Amazon RDS Aurora. Estas credenciales no incluyen información sobre el host o el puerto, que es AWS DMS necesaria para establecer conexiones. En lugar de ello, cree un nuevo usuario y secreto. Para obtener información acerca de cómo crear un usuario y un secreto, consulte [Uso de Consola de administración de AWS para crear un rol secreto y de acceso secreto](#security_iam_secretsmanager.console) a continuación.

Para obtener más información AWS Secrets Manager, consulte [¿Qué es AWS Secrets Manager?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) en la *Guía AWS Secrets Manager del usuario*.

AWS DMS admite la autenticación secreta para las siguientes bases de datos locales o AWS administradas en los puntos finales de origen y destino compatibles:
+ Amazon DocumentDB
+ IBM Db2 LUW
+ Microsoft SQL Server
+ MongoDB
+ MySQL
+ Oracle
+ PostgreSQL
+ Amazon Redshift
+ SAP ASE

Para conectarse a cualquiera de estas bases de datos, tiene la opción de ingresar uno de los siguientes conjuntos de valores, pero no ambos, como parte de la configuración del punto de conexión:
+ Valores de texto sin cifrar para autenticar la conexión a la base de datos mediante la configuración de `UserName`, `Password`, `ServerName` y `Port`. Para un punto de conexión de Oracle que también utiliza Oracle ASM, incluya valores de texto sin cifrar adicionales para autenticar ASM mediante la configuración de `AsmUserName`, `AsmPassword` y `AsmServerName`.
+ Autenticación secreta mediante valores para la configuración de `SecretsManagerSecretId` y `SecretsManagerAccessRoleArn`. En el caso de un punto de conexión de Oracle con Oracle ASM, incluya valores adicionales para la configuración de `SecretsManagerOracleAsmSecretId` y `SecretsManagerOracleAsmAccessRoleArn`. Los valores secretos de estos ajustes pueden incluir los siguientes para: 
  + `SecretsManagerSecretId`: el nombre de recurso de Amazon (ARN) completo, el ARN parcial o el nombre descriptivo de un secreto que haya creado para el acceso a la base de datos del punto de conexión en AWS Secrets Manager.
  + `SecretsManagerAccessRoleArn`— El ARN de un rol de acceso secreto que ha creado en IAM para proporcionar AWS DMS acceso a este `SecretsManagerSecretId` secreto en su nombre.
  + `SecretsManagerOracleAsmSecretId`: el nombre de recurso de Amazon (ARN) completo, el ARN parcial o el nombre descriptivo de un secreto que haya creado para el acceso de Oracle ASM en AWS Secrets Manager.
  + `SecretsManagerOracleAsmAccessRoleArn`: el ARN de un rol de acceso secreto que ha creado en IAM para proporcionar acceso de AWS DMS a este secreto `SecretsManagerOracleAsmSecretId` en su nombre.
**nota**  
También puede utilizar un único rol de acceso secreto para proporcionar AWS DMS acceso tanto al secreto como al `SecretsManagerSecretId` secreto. `SecretsManagerOracleAsmSecretId` Si crea este único rol de acceso secreto para ambos secretos, asegúrese de asignar el mismo ARN para este rol de acceso a `SecretsManagerAccessRoleArn` y `SecretsManagerOracleAsmAccessRoleArn`. Por ejemplo, si el rol de acceso secreto para ambos secretos tiene su ARN asignado a la variable, `ARN2xsecrets`, puede establecer estas configuraciones de ARN de la siguiente manera:  

  ```
  SecretsManagerAccessRoleArn = ARN2xsecrets;
  SecretsManagerOracleAsmAccessRoleArn = ARN2xsecrets;
  ```

  Para obtener más información sobre la creación de estos valores, consulte [Uso de Consola de administración de AWS para crear un rol secreto y de acceso secreto](#security_iam_secretsmanager.console).

Después de haber creado y especificado la configuración de punto de conexión secreta y de rol de acceso secreto necesaria para los puntos de conexión, actualice los permisos de las cuentas de usuario que ejecutarán la solicitud de la API `CreateEndpoint` o `ModifyEndpoint` con estos detalles de secretos. Asegúrese de que los permisos de estas cuentas incluyan el `IAM:GetRole` permiso de la función de acceso secreto y el `SecretsManager:DescribeSecret` permiso de la función secreta. AWS DMS requiere estos permisos para validar tanto el rol de acceso como su secreto.

**Suministro y comprobación de los permisos de usuario necesarios**

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

1. Elija **Usuarios** y, a continuación, seleccione el **ID de usuario** utilizado para realizar llamadas a la API `CreateEndpoint` y `ModifyEndpoint`.

1. En la pestaña **Permisos**, elija **\$1\$1 JSON**.

1. Asegúrese de que el usuario tenga los permisos mostrados a continuación.

   ```
   {
   	"Statement": [{
   			"Effect": "Allow",
   			"Action": [
   				"iam:GetRole",
   				"iam:PassRole"
   			],
   			"Resource": "SECRET_ACCESS_ROLE_ARN"
   		},
   		{
   			"Effect": "Allow",
   			"Action": "secretsmanager:DescribeSecret",
   			"Resource": "SECRET_ARN"
   		}
   	]
   }
   ```

1. Si el usuario no tiene esos permisos, agréguelos.

1. Si utiliza un rol de IAM para realizar llamadas a la API de DMS, repita los pasos anteriores para el rol correspondiente.

1. Abra un terminal y utilícelo AWS CLI para validar que los permisos se concedan correctamente asumiendo el rol o el usuario utilizados anteriormente.

   1. Valide el permiso del usuario al SecretAccessRole utilizar el `get-role` comando IAM.

      ```
      aws iam get-role --role-name ROLE_NAME
      ```

      *ROLE\$1NAME*Sustitúyalo por el nombre de. `SecretsManagerAccessRole`

      Si el comando devuelve un mensaje de error, asegúrese de que los permisos se hayan otorgado correctamente.

   1. Valide el permiso del usuario en el secreto mediante el comando `describe-secret` de Secrets Manager.

      ```
      aws secretsmanager describe-secret --secret-id SECRET_NAME OR SECRET_ARN --region=REGION_NAME
      ```

      El usuario puede ser el nombre descriptivo, el ARN parcial o el ARN completo. Para obtener más información, consulte [describe-secret](https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/describe-secret.html).

      Si el comando devuelve un mensaje de error, asegúrese de que los permisos se hayan otorgado correctamente.

## Uso de Consola de administración de AWS para crear un rol secreto y de acceso secreto
<a name="security_iam_secretsmanager.console"></a>

Puede usarlo Consola de administración de AWS para crear un secreto para la autenticación del punto final y para crear la política y el rol que le permitan acceder AWS DMS al secreto en su nombre.

**Para crear un secreto con el Consola de administración de AWS que AWS DMS se pueda autenticar una base de datos para las conexiones de los puntos finales de origen y destino**

1. Inicie sesión en Consola de administración de AWS y abra la AWS Secrets Manager consola en[https://console.aws.amazon.com/secretsmanager/](https://console.aws.amazon.com/secretsmanager/).

1. Elija **Almacenar un secreto nuevo**.

1. En **Seleccionar tipo de secreto** en la página **Almacenar un nuevo secreto**, elija **Otro tipo de secretos** y, a continuación, elija **Texto no cifrado**.
**nota**  
Este es el único lugar en el que debe ingresar credenciales de texto sin cifrar para conectarse a la base de datos de punto de conexión a partir de ahora.

1. En el campo **Texto no cifrado**: 
   + Para un secreto cuya identidad asigne a `SecretsManagerSecretId`, ingrese la siguiente estructura JSON.

     ```
     {
       "username": db_username,
       "password": db_user_password,
       "port": db_port_number,
       "host": db_server_name
     }
     ```
**nota**  
Esta es la lista mínima de miembros de JSON necesaria para autenticar la base de datos de puntos de conexión. Puede agregar cualquier configuración de punto de conexión de JSON adicional como miembros de JSON en minúsculas que desee. Sin embargo, AWS DMS ignora los miembros de JSON adicionales para la autenticación de puntos de conexión.

     Aquí, `db_username` es el nombre del usuario que accede a la base de datos, `db_user_password` es la contraseña del usuario de la base de datos, `db_port_number` es el número de puerto para acceder a la base de datos y `db_server_name` es el nombre (dirección) del servidor de la base de datos en la web, como en el siguiente ejemplo.

     ```
     {
       "username": "admin",
       "password": "some_password",
       "port": "8190",
       "host": "oracle101.abcdefghij.us-east-1.rds.amazonaws.com"
     }
     ```
   + Para un secreto cuya identidad asigne a `SecretsManagerOracleAsmSecretId`, ingrese la siguiente estructura JSON.

     ```
     {
       "asm_user": asm_username,
       "asm_password": asm_user_password,
       "asm_server": asm_server_name
     }
     ```
**nota**  
Esta es la lista mínima de miembros de JSON necesaria para autenticar Oracle ASM para un punto de conexión de Oracle. También es la lista completa que puede especificar en función de la configuración de punto de conexión de Oracle ASM disponible.

     Aquí, `asm_username` es el nombre del usuario que accede a Oracle ASM, `asm_user_password` es la contraseña del usuario de Oracle ASM y `asm_server_name` es el nombre (dirección) del servidor de Oracle ASM en la web, incluido el puerto, como en el siguiente ejemplo.

     ```
     { 
       "asm_user": "oracle_asm_user", 
       "asm_password": "oracle_asm_password",
       "asm_server": "oracle101.abcdefghij.us-east-1.rds.amazonaws.com:8190/+ASM" 
     }
     ```

1. Seleccione una clave de AWS KMS cifrado para cifrar el secreto. Puede aceptar la clave de cifrado predeterminada creada para su servicio AWS Secrets Manager o seleccionar una AWS KMS clave que cree.

1. Especifique un nombre para hacer referencia a este secreto y una descripción opcional. Este es el nombre descriptivo que se utiliza como valor para `SecretsManagerSecretId` o `SecretsManagerOracleAsmSecretId`.

1. Si desea activar la rotación automática del secreto, debe seleccionar o crear una AWS Lambda función con permiso para rotar las credenciales del secreto tal y como se describe. Sin embargo, antes de configurar la rotación automática para utilizar la función de Lambda, asegúrese de que los ajustes de configuración de la función agreguen los cuatro caracteres siguientes al valor de la variable de entorno `EXCLUDE_CHARACTERS`.

   ```
   ;.:+{}*&,%\
   ```

   AWS DMS no permite estos caracteres en las contraseñas utilizadas como credenciales de punto final. Si configura la función de Lambda para excluirlos, evita que AWS Secrets Manager genere estos caracteres como parte de los valores de contraseña rotados. Después de configurar la rotación automática para usar la función Lambda, rota AWS Secrets Manager inmediatamente el secreto para validar la configuración secreta.
**nota**  
En función de la configuración del motor de base de datos, es posible que la base de datos no recupere las credenciales rotadas. En este caso, debe reiniciar manualmente la tarea para actualizar las credenciales.

1. Revisa y guarda tu secreto en él. AWS Secrets Manager A continuación, puede buscar cada secreto por su nombre descriptivo y, a continuación AWS Secrets Manager, recuperar el ARN secreto como el valor `SecretsManagerSecretId` o `SecretsManagerOracleAsmSecretId` según corresponda para autenticar el acceso a la conexión de la base de datos de puntos finales y a Oracle ASM (si se utiliza).

**Para crear la política de acceso secreto y el rol para establecer su `SecretsManagerAccessRoleArn` o`SecretsManagerOracleAsmAccessRoleArn`, que le permita acceder AWS DMS AWS Secrets Manager al secreto correspondiente**

1. Inicie sesión en la consola AWS Identity and Access Management (IAM) Consola de administración de AWS y ábrala 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": "*"
       },
       {
         "Effect": "Allow",
         "Action": [
           "kms:Decrypt",
           "kms:DescribeKey"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

   Aquí, `secret_arn` es el ARN del secreto, que puede obtener de `SecretsManagerSecretId` o `SecretsManagerOracleAsmSecretId` 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 es necesario que especifique los AWS KMS permisos correspondientes`kms_key_arn`.  
Si desea que su política proporcione acceso a ambos secretos, simplemente especifique un objeto de recurso JSON adicional para el otro*secret\$1arn*.  
Si el secreto está en una cuenta diferente, el rol `SecretsManagerAccessRoleArn` necesita una política adicional para verificar el secreto entre cuentas. Para estos casos de uso, agregue la acción `secretsmanager:DescribeSecret` a la política. Para obtener más información sobre cómo configurar un secreto multicuenta, consulta [Permisos para acceder a los AWS secretos de Secrets Manager para los usuarios de una cuenta diferente](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access_examples_cross.html).

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 a su director de servicio AWS DMS regional 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, a continuación se indica un director de servicio AWS DMS regional para esta región.

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

1. Tras editar la entidad de confianza para el rol, cree el rol con un nombre descriptivo y una descripción opcional. Ahora puede buscar el nuevo rol por su nombre descriptivo en IAM y, a continuación, recuperar el ARN del rol como valor `SecretsManagerAccessRoleArn` o `SecretsManagerOracleAsmAccessRoleArn` para autenticar la conexión de base de datos de puntos de conexión.

**Uso de Secrets Manager con una instancia de replicación en una subred privada**

1. Cree un punto de conexión de VPC de administrador de secretos y anote el DNS del punto de conexión. Para obtener más información sobre la creación de un punto de conexión de VPC de Secrets Manager, consulte [Conexión a Secrets Manager a través de un punto de conexión de VPC](https://docs.aws.amazon.com/secretsmanager/latest/userguide/vpc-endpoint-overview.html#vpc-endpoint) []()en la *Guía del usuario de AWS Secrets Manager*.

1. Para las reglas de entrada de los grupos de seguridad de puntos de conexión de VPC, permita el tráfico HTTPS desde la dirección IP privada de la instancia de replicación o los grupos de seguridad asociados a las instancias de replicación.

1. Para las reglas de salida del grupo de seguridad de la instancia de replicación, permita que todo el tráfico llegue al destino `0.0.0.0/0`.

1. Establezca el atributo de conexión adicional de punto de conexión, `secretsManagerEndpointOverride=secretsManager endpoint DNS` para proporcionar el DNS de punto de conexión de VPC del mánager secreto, como se muestra en el siguiente ejemplo.

   ```
   secretsManagerEndpointOverride=vpce-1234a5678b9012c-12345678.secretsmanager.eu-west-1.vpce.amazonaws.com
   ```

# Uso de roles vinculados a servicios para AWS DMS
<a name="using-service-linked-roles"></a>

AWS Database Migration Service [usa roles vinculados al AWS Identity and Access Management servicio (IAM).](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) Un rol vinculado a un servicio es un tipo único de rol de IAM al que se vincula directamente. AWS DMS Los roles vinculados al servicio están predefinidos AWS DMS e incluyen todos los permisos que el servicio requiere para llamar a otros AWS servicios en su nombre. 

Un rol vinculado a un servicio facilita la configuración AWS DMS , ya que no es necesario añadir manualmente los permisos necesarios. AWS DMS define los permisos de sus funciones vinculadas al servicio y, a menos que se defina lo contrario, solo AWS DMS puede asumir sus funciones. Los permisos definidos incluyen las políticas de confianza y de permisos, y que la política de permisos no se puede asociar a ninguna otra entidad de IAM.

Solo es posible eliminar un rol vinculado a un servicio después de eliminar sus recursos relacionados. Esto protege sus AWS DMS recursos porque no puede eliminar inadvertidamente el permiso de acceso a los recursos.

**Para obtener información sobre otros servicios que admiten funciones vinculadas a servicios, consulte [AWS Servicios que funcionan con IAM y busque los servicios con](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) la palabra **Sí** en la columna Funciones vinculadas a servicios.** Elija una opción **Sí** con un enlace para ver la documentación acerca del rol vinculado al servicio en cuestión.

**Funciones vinculadas al servicio para ver las características AWS DMS **

**Topics**
+ [Funciones vinculadas al servicio para Fleet Advisor AWS DMS](slr-services-fa.md)
+ [Función vinculada al servicio para AWS DMS](slr-services-sl.md)

# Funciones vinculadas al servicio para Fleet Advisor AWS DMS
<a name="slr-services-fa"></a>

AWS DMS Fleet Advisor usa el rol vinculado al servicio denominado **AWSServiceRoleForDMSFleetAsesor: DMS Fleet Advisor** usa este rol vinculado al servicio para administrar las métricas de Amazon. CloudWatch Este rol vinculado a un servicio se adjunta a la siguiente política administrada: `AWSDMSFleetAdvisorServiceRolePolicy`. Para obtener actualizaciones de esta política, consulte [AWS políticas gestionadas para AWS Database Migration Service](security-iam-awsmanpol.md).

El rol de AWSService RoleFor DMSFleet asesor vinculado al servicio confía en los siguientes servicios para asumir el rol:
+ `dms-fleet-advisor.amazonaws.com`

La política de permisos de roles denominada AWSDMSFleet AdvisorServiceRolePolicy permite a AWS DMS Fleet Advisor realizar las siguientes acciones en los recursos especificados:
+ Acción: `cloudwatch:PutMetricData` en `all AWS resources`

  Este permiso permite a los directores publicar puntos de datos métricos en Amazon CloudWatch. AWS DMS Fleet Advisor requiere este permiso para mostrar gráficos con las métricas de la base de datos de CloudWatch.

El siguiente ejemplo de código muestra la AWSDMSFleet AdvisorServiceRolePolicy política que se utiliza para crear el AWSDMSFleet AdvisorServiceRolePolicy rol.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Resource": "*",
        "Action": "cloudwatch:PutMetricData",
        "Condition": {
            "StringEquals": {
                "cloudwatch:namespace": "AWS/DMS/FleetAdvisor"
            }
        }
    }
}
```

------

Debe configurar permisos para permitir a una entidad de IAM como un usuario, grupo o rol, para crear, editar o eliminar un rol vinculado a servicios. Para obtener más información, consulte [Permisos de roles vinculados a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) en la *Guía del usuario de IAM*.

## Crear un rol vinculado a un servicio para Fleet Advisor AWS DMS
<a name="create-slr-fa"></a>

Puede utilizar la consola de IAM para crear un rol vinculado a servicios con el caso de uso de **DMS: Fleet Advisor**. En la API AWS CLI o en la AWS API, cree una función vinculada al servicio con el nombre del servicio. `dms-fleet-advisor.amazonaws.com` Para obtener más información, consulte [Crear un rol vinculado a un servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role) en la *Guía del usuario de IAM*. Si elimina este rol vinculado al servicio, puede utilizar este mismo proceso para volver a crear el rol.

Asegúrese de crear este rol antes de crear un recopilador de datos. DMS Fleet Advisor utiliza este rol para mostrar gráficos con métricas de bases de datos en la Consola de administración de AWS. Para obtener más información, consulte [Creación de un recopilador de datos](fa-data-collectors-create.md).

## Edición de un rol vinculado a un servicio para Fleet Advisor AWS DMS
<a name="edit-slr-fa"></a>

AWS DMS no permite editar el rol de AWSService RoleFor DMSFleet asesor vinculado al servicio. Después de crear un rol vinculado a un servicio, no puede cambiarle el nombre, ya que varias entidades pueden hacer referencia a él. Sin embargo, puede editar la descripción del rol mediante IAM. Para obtener más información, consulte [Editar un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) en la *Guía del usuario de IAM*.

## Eliminar un rol vinculado a un servicio para Fleet Advisor AWS DMS
<a name="delete-slr-fa"></a>

Si ya no necesita usar una característica o servicio que requieran un rol vinculado a un servicio, le recomendamos que elimine dicho rol. Por lo tanto, no tiene una entidad no utilizada que no se monitoree ni se mantenga de forma activa. Sin embargo, debe limpiar los recursos de su rol vinculado al servicio antes de eliminarlo manualmente.

**nota**  
Si el AWS DMS servicio utiliza el rol al intentar eliminar los recursos, es posible que la eliminación no se realice correctamente. En tal caso, espere unos minutos e intente de nuevo la operación.

**Para eliminar AWS DMS los recursos utilizados por el AWSService RoleFor DMSFleet asesor**

1. Inicie sesión en la AWS DMS consola Consola de administración de AWS y ábrala en la versión [https://console.aws.amazon.com/dms/2/](https://console.aws.amazon.com/dms/v2/).

1. En el panel de navegación, elija **Recopiladores de datos** en **Detectar**. Se abre la página de **recopiladores de datos**.

1. Elija el recopilador de datos y elija **Eliminar**.

1. Para confirmar la eliminación, escriba el nombre del recopilador de datos en el campo de entrada de texto. A continuación, elija **Eliminar**.

**importante**  
Al eliminar un recopilador de datos de DMS, DMS Fleet Advisor elimina del inventario todas las bases de datos que haya detectado con este recopilador.

Tras eliminar todos los recopiladores de datos, puede eliminar el rol vinculado al servicio.

**Para eliminar manualmente el rol vinculado a servicios mediante IAM**

Utilice la consola de IAM AWS CLI, la o la AWS API para eliminar la función de AWSService RoleFor DMSFleet asesor vinculada al servicio. Para obtener más información, consulte [Eliminación de un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) en la *Guía del usuario de IAM*.

## Regiones compatibles para las funciones vinculadas al servicio de AWS DMS Fleet Advisor
<a name="slr-regions-fa"></a>

AWS DMS Fleet Advisor admite el uso de funciones vinculadas al servicio en todas las regiones en las que el servicio está disponible. Para obtener más información, consulte [Compatible Regiones de AWS](CHAP_FleetAdvisor.md#CHAP_FleetAdvisor.SupportedRegions).

# Función vinculada al servicio para AWS DMS
<a name="slr-services-sl"></a>

AWS DMS utiliza el rol vinculado al servicio denominado. **AWSServiceRoleForDMSServerless** AWS DMS utiliza este rol vinculado al servicio para crear y administrar AWS DMS recursos en su nombre. AWS DMS utiliza este rol para la administración automática de instancias, de modo que solo tenga que administrar las replicaciones.

El rol vinculado al servicio [AWSServiceRoleForDMSServerless](security-iam-awsmanpol.md#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy) depende de los siguientes servicios para asumir el rol:
+ `dms.amazonaws.com`

Debe configurar permisos para permitir a una entidad de IAM como un usuario, grupo o rol, para crear, editar o eliminar un rol vinculado a servicios. Para obtener más información, consulte [Permisos de roles vinculados a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) en la *Guía del usuario de IAM*.

## Crear un rol vinculado a un servicio para AWS DMS
<a name="create-slr-sl"></a>

Al iniciar una tarea de replicación o iniciar una evaluación previa a la migración, crea AWS DMS mediante programación un rol vinculado al servicio. AWS DMS Puede consultar este rol en la consola de IAM. También tiene la opción de crear este rol manualmente. Para crear el rol de forma manual, utilice la consola de IAM para crear un rol vinculado al servicio con el caso de uso de **DMS**. En la AWS CLI o en la AWS API, cree una función vinculada al servicio utilizando `dms.amazonaws.com` el nombre del servicio. Para obtener más información, consulte [Crear un rol vinculado a un servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#create-service-linked-role) en la *Guía del usuario de IAM*. Si elimina este rol vinculado al servicio, puede utilizar este mismo proceso para volver a crear el rol.

**nota**  
Si elimina un rol mientras tiene replicaciones en la cuenta, la replicación provocará un error.

## Edición de un rol vinculado a un servicio para AWS DMS
<a name="edit-slr-sl"></a>

AWS DMS no permite editar el rol vinculado al AWSService RoleFor DMSServerless servicio. Después de crear un rol vinculado a un servicio, no puede cambiarle el nombre, ya que varias entidades pueden hacer referencia a él. Sin embargo, puede editar la descripción del rol mediante IAM. Para obtener más información, consulte [Editar un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) en la *Guía del usuario de IAM*.

## Eliminar un rol vinculado a un servicio para AWS DMS
<a name="delete-slr-sl"></a>

Si ya no necesita usar una característica o servicio que requieran un rol vinculado a un servicio, le recomendamos que elimine dicho rol. Por lo tanto, no tiene una entidad no utilizada que no se monitoree ni se mantenga de forma activa. Sin embargo, debe limpiar los recursos de su rol vinculado al servicio antes de eliminarlo manualmente.

**nota**  
Si el AWS DMS servicio utiliza el rol al intentar eliminar los recursos, es posible que la eliminación no se realice correctamente. En tal caso, espere unos minutos e intente de nuevo la operación.

**Para eliminar AWS DMS los recursos utilizados por el AWSService RoleFor DMSServerless**

1. Inicie sesión en la AWS DMS consola Consola de administración de AWS y ábrala en la [https://console.aws.amazon.com/dms/versión 2](https://console.aws.amazon.com/dms/v2/).

1. En el panel de navegación, elija **Replicaciones sin servidor** en ****Migrar datos****. Se abre la página **Sin servidor**.

1. Elija la replicación sin servidor y elija **Eliminar**.

1. Para confirmar la eliminación, escriba el nombre de la replicación sin servidor en el campo de entrada de texto. A continuación, elija **Eliminar**.

Tras eliminar todas las replicaciones sin servidor, puede eliminar el rol vinculado al servicio.

**Para eliminar manualmente el rol vinculado a servicios mediante IAM**

Utilice la consola de IAM AWS CLI, la o la AWS API para eliminar el rol vinculado al AWSService RoleFor DMSServerless servicio. Para obtener más información, consulte [Eliminación de un rol vinculado a servicios](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role) en la *Guía del usuario de IAM*.

## Regiones compatibles para los roles vinculados al servicio AWS DMS
<a name="slr-regions-sl"></a>

AWS DMS admite el uso de funciones vinculadas al servicio en todas las regiones en las que el servicio está disponible. 

# Solución de problemas AWS Database Migration Service de identidad y acceso
<a name="security_iam_troubleshoot"></a>

Utilice la siguiente información como ayuda para diagnosticar y solucionar los problemas habituales que pueden surgir al trabajar con un AWS DMS IAM.

**Topics**
+ [No estoy autorizado a realizar ninguna acción en AWS DMS](#security_iam_troubleshoot-no-permissions)
+ [No estoy autorizado a realizar el iam: PassRole](#security_iam_troubleshoot-passrole)
+ [Soy administrador y quiero permitir el acceso de otras personas AWS DMS](#security_iam_troubleshoot-admin-delegate)
+ [Quiero permitir que personas ajenas a mi AWS cuenta accedan a mis AWS DMS recursos](#security_iam_troubleshoot-cross-account-access)

## No estoy autorizado a realizar ninguna acción en AWS DMS
<a name="security_iam_troubleshoot-no-permissions"></a>

Si Consola de administración de AWS le indica que no está autorizado a realizar una acción, debe ponerse en contacto con su administrador para obtener ayuda. El administrador es la persona que le facilitó el nombre de usuario y la contraseña.

El siguiente ejemplo de error se produce cuando el usuario de `mateojackson` IAM intenta utilizar la consola para ver los detalles de un punto final del AWS DMS, pero no tiene `dms: DescribeEndpoint` permisos.

```
User: arn:aws:iam::123456789012:user/mateojackson is not authorized to perform: dms:DescribeEndpoint on resource: my-postgresql-target
```

En este caso, Mateo pide a su administrador que actualice sus políticas de forma que pueda obtener acceso al recurso de punto de enlace `my-postgresql-target` mediante la acción `dms:DescribeEndpoint`.

## No estoy autorizado a realizar el iam: PassRole
<a name="security_iam_troubleshoot-passrole"></a>

Si recibe un error que indica que no tiene autorización para realizar la acción `iam:PassRole`, las políticas deben actualizarse a fin de permitirle pasar un rol a AWS DMS.

Algunas Servicios de AWS permiten transferir una función existente a ese servicio en lugar de crear una nueva función de servicio o una función vinculada a un servicio. Para ello, debe tener permisos para transferir la función al servicio.

En el siguiente ejemplo, el error se produce cuando un usuario de IAM denominado `marymajor` intenta utilizar la consola para realizar una acción en AWS DMS. Sin embargo, la acción requiere que el servicio cuente con permisos que otorguen un rol de servicio. Mary no tiene permisos para transferir el rol al servicio.

```
User: arn:aws:iam::123456789012:user/marymajor is not authorized to perform: iam:PassRole
```

En este caso, las políticas de Mary se deben actualizar para permitirle realizar la acción `iam:PassRole`.

Si necesita ayuda, póngase en contacto con su AWS administrador. El administrador es la persona que le proporcionó las credenciales de inicio de sesión.

## Soy administrador y quiero permitir el acceso de otras personas AWS DMS
<a name="security_iam_troubleshoot-admin-delegate"></a>

Para permitir el acceso de otras personas AWS DMS, debes conceder permiso a las personas o aplicaciones que necesitan acceso. Si usa AWS IAM Identity Center para administrar las personas y las aplicaciones, debe asignar conjuntos de permisos a los usuarios o grupos para definir su nivel de acceso. Los conjuntos de permisos crean políticas de IAM y las asignan a los roles de IAM asociados a la persona o aplicación de forma automática. Para obtener más información, consulte la sección [Conjuntos de permisos](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html) en la *Guía del usuario de AWS IAM Identity Center *.

Si no utiliza IAM Identity Center, debe crear entidades de IAM (usuarios o roles) para las personas o aplicaciones que necesitan acceso. A continuación, debe asociar una política a la entidad que le conceda los permisos correctos en AWS DMS. Una vez concedidos los permisos, proporcione las credenciales al usuario o al desarrollador de la aplicación. Utilizarán esas credenciales para acceder a AWS. Para obtener más información sobre la creación de usuarios, grupos, políticas y permisos de IAM, consulte [Identidades de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html) y [Políticas y permisos en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) en la *Guía del usuario de IAM*.

## Quiero permitir que personas ajenas a mi AWS cuenta accedan a mis AWS DMS recursos
<a name="security_iam_troubleshoot-cross-account-access"></a>

Se puede crear un rol que los usuarios de otras cuentas o las personas externas a la organización puedan utilizar para acceder a sus recursos. Se puede especificar una persona de confianza para que asuma el rol. En el caso de los servicios que admiten políticas basadas en recursos o listas de control de acceso (ACLs), puedes usar esas políticas para permitir que las personas accedan a tus recursos.

Para obtener más información, consulte lo siguiente:
+ Para saber si AWS DMS es compatible con estas funciones, consulte. [¿Cómo AWS Database Migration Service funciona con IAM](security_iam_service-with-iam.md)
+ Para obtener información sobre cómo proporcionar acceso a los recursos de su Cuentas de AWS propiedad, consulte [Proporcionar acceso a un usuario de IAM en otro usuario de su propiedad Cuenta de AWS en](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html) la Guía del *usuario de IAM*.
+ Para obtener información sobre cómo proporcionar acceso a tus recursos a terceros Cuentas de AWS, consulta Cómo [proporcionar acceso a recursos que Cuentas de AWS son propiedad de terceros](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) en la Guía del usuario de *IAM*.
+ Para obtener información sobre cómo proporcionar acceso mediante una federación de identidades, consulte [Proporcionar acceso a usuarios autenticados externamente (identidad federada)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_federated-users.html) en la *Guía del usuario de IAM*.
+ Para conocer sobre la diferencia entre las políticas basadas en roles y en recursos para el acceso entre cuentas, consulte [Acceso a recursos entre cuentas en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-cross-account-resource-access.html) en la *Guía del usuario de IAM*.

## Se necesitan permisos de IAM para utilizarlos AWS DMS
<a name="CHAP_Security.IAMPermissions"></a>

Para utilizar AWS DMS se usan determinados permisos y roles de IAM. Si ha iniciado sesión como usuario de IAM y desea utilizarlos AWS DMS, el administrador de su cuenta debe adjuntar la política descrita en esta sección al usuario, grupo o función de IAM que utilice para ejecutar. AWS DMS Para obtener más información sobre los permisos de IAM, consulte la [Guía del usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_access-management.html). 

La siguiente política te da acceso y también permisos para determinadas acciones necesarias desde otros servicios de Amazon AWS KMS, como IAM, Amazon EC2 y Amazon. AWS DMS CloudWatch CloudWatchsupervisa AWS DMS la migración en tiempo real y recopila y realiza un seguimiento de las métricas que indican el progreso de la migración. Puedes usar CloudWatch los registros para depurar problemas relacionados con una tarea. 

**nota**  
Puedes restringir aún más el acceso a AWS DMS los recursos mediante el etiquetado. Para obtener más información sobre cómo restringir el acceso a AWS DMS los recursos mediante el etiquetado, consulte. [Control de acceso detallado mediante nombres de recursos y etiquetas](CHAP_Security.FineGrainedAccess.md)

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

****  

```
{

  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "dms:*",
      "Resource": "arn:aws:dms:*:123456789012:*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "kms:ListAliases",
        "kms:DescribeKey"
      ],
      "Resource": "arn:aws:kms:*:123456789012:key/*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "iam:GetRole",
        "iam:PassRole",
        "iam:CreateRole",
        "iam:AttachRolePolicy"
      ],
      "Resource": "arn:aws:iam::123456789012:role/*",
      "Condition": {
        "StringEquals": {
          "iam:PassedToService": "dms.amazonaws.com"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeVpcs",
        "ec2:DescribeInternetGateways",
        "ec2:DescribeAvailabilityZones",
        "ec2:DescribeSubnets",
        "ec2:DescribeSecurityGroups",
        "ec2:ModifyNetworkInterfaceAttribute",
        "ec2:CreateNetworkInterface",
        "ec2:DeleteNetworkInterface"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "cloudwatch:Get*",
        "cloudwatch:List*"
      ],
      "Resource": "*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "logs:DescribeLogGroups",
        "logs:DescribeLogStreams",
        "logs:FilterLogEvents",
        "logs:GetLogEvents"
      ],
      "Resource": "arn:aws:logs:*:123456789012:*"
    }
  ]
}
```

------

El desglose de estos permisos siguientes podría ayudarle a entender mejor por qué cada uno de ellos es necesario.

La siguiente sección es necesaria para que el usuario pueda llamar a las operaciones de la AWS DMS API.

```
{
            "Effect": "Allow",
            "Action": "dms:*",
            "Resource": "arn:aws:dms:region:account:resourcetype/id"
}
```

La siguiente sección es necesaria para que el usuario pueda enumerar sus AWS KMS claves y alias disponibles para mostrarlos en la consola. Esta entrada no es obligatoria si conoce el nombre de recurso de Amazon (ARN) de la clave KMS y utiliza únicamente el AWS Command Line Interface (AWS CLI).

```
{
            "Effect": "Allow",
            "Action": [
                "kms:ListAliases", 
                "kms:DescribeKey"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La sección siguiente es necesaria para determinados tipos de punto de enlace que requieren que se pase un ARN del rol de IAM con el punto de enlace. Además, si los AWS DMS roles necesarios no se crean con antelación, la AWS DMS consola puede crear el rol. Si todas las funciones se configuran con antelación, todo eso es necesario en `iam:GetRole` e `iam:PassRole`. Para obtener más información acerca de los roles, consulte [Crear los roles de IAM para usarlos con AWS DMS](#CHAP_Security.APIRole).

```
{
            "Effect": "Allow",
            "Action": [
                "iam:GetRole",
                "iam:PassRole",
                "iam:CreateRole",
                "iam:AttachRolePolicy"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La siguiente sección es obligatoria porque AWS DMS necesita crear la instancia Amazon EC2 y configurar la red para la instancia de replicación que se crea. Estos recursos existen en la cuenta del cliente, por lo que la capacidad para realizar estas acciones en nombre del cliente es necesaria.

```
{
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeVpcs",
                "ec2:DescribeInternetGateways",
                "ec2:DescribeAvailabilityZones",
                "ec2:DescribeSubnets",
                "ec2:DescribeSecurityGroups",
                "ec2:ModifyNetworkInterfaceAttribute",
                "ec2:CreateNetworkInterface",
                "ec2:DeleteNetworkInterface"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

La siguiente sección es necesaria para permitir que el usuario pueda ver las métricas de instancia de replicación.

```
{
            "Effect": "Allow",
            "Action": [
                "cloudwatch:Get*",
                "cloudwatch:List*"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

Esta sección es necesaria para permitir que el usuario vea los registros de replicación.

```
{
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups",
                "logs:DescribeLogStreams",
                "logs:FilterLogEvents",
                "logs:GetLogEvents"
            ],
            "Resource": "arn:aws:service:region:account:resourcetype/id"
        }
```

 Si utiliza la AWS DMS consola, la AWS Command Line Interface (AWS CLI) o la AWS DMS API para la migración, tendrá que añadir varias funciones a su cuenta. Para obtener más información sobre la creación de estos roles, consulte [Crear los roles de IAM para usarlos con AWS DMS](#CHAP_Security.APIRole).

## Crear los roles de IAM para usarlos con AWS DMS
<a name="CHAP_Security.APIRole"></a>

Si utiliza la AWS DMS consola, la API AWS CLI o la AWS DMS API para migrar su base de datos, debe añadir tres funciones de IAM a su AWS cuenta antes de poder utilizar las funciones de. AWS DMS Dos de los tres roles son `dms-vpc-role` y `dms-cloudwatch-logs-role`. Si utiliza Amazon Redshift como base de datos de destino, también debe añadir el rol de IAM `dms-access-for-endpoint` a su cuenta. AWS 

Las actualizaciones de las políticas administradas son automáticas. Si utiliza una política personalizada con los roles de IAM, asegúrese de comprobar de forma periódica las actualizaciones de la política administrada en esta documentación. Puede ver los detalles de la política administrada usando una combinación de los comandos `get-policy` y `get-policy-version`.

Por ejemplo, el siguiente comando `get-policy` recupera información sobre la función de IAM especificada.

```
aws iam get-policy --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole
```

El comando devuelve la siguiente información.

```
{
    "Policy": {
        "PolicyName": "AmazonDMSVPCManagementRole",
        "PolicyId": "ANPAJHKIGMBQI4AEFFSYO",
        "Arn": "arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole",
        "Path": "/service-role/",
        "DefaultVersionId": "v4",
        "AttachmentCount": 1,
        "PermissionsBoundaryUsageCount": 0,
        "IsAttachable": true,
        "Description": "Provides access to manage VPC settings for AWS managed customer configurations",
        "CreateDate": "2015-11-18T16:33:19+00:00",
        "UpdateDate": "2024-07-25T15:19:01+00:00",
        "Tags": []
    }
}
```

El siguiente comando `get-policy-version` obtiene información de políticas de IAM.

```
aws iam get-policy-version --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole --version-id v4
```

El comando devuelve la siguiente información.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Sid": "ExampleStatementID",
        "Effect": "Allow",
        "Action": [
            "ec2:CreateNetworkInterface",
            "ec2:DeleteNetworkInterface",
            "ec2:DescribeAvailabilityZones",
            "ec2:DescribeDhcpOptions",
            "ec2:DescribeInternetGateways",
            "ec2:DescribeNetworkInterfaces",
            "ec2:DescribeSecurityGroups",
            "ec2:DescribeSubnets",
            "ec2:DescribeVpcs",
            "ec2:ModifyNetworkInterfaceAttribute"
        ],
        "Resource": "*"
      }
    ]
}
```

------

Puede utilizar los mismos comandos para obtener información sobre `AmazonDMSCloudWatchLogsRole` y la política administrada de `AmazonDMSRedshiftS3Role`.

Los siguientes procedimientos crean los roles de IAM `dms-vpc-role`, `dms-cloudwatch-logs-role` y `dms-access-for-endpoint`.

**Para crear el rol de dms-vpc-role IAM para usarlo con la API o AWS CLI AWS DMS**

1.  Cree un archivo JSON con la política de IAM siguiente. Asigne el nombre al archivo JSON `dmsAssumeRolePolicyDocument.json`. 

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
      {
        "Effect": "Allow",
        "Principal": {
           "Service": "dms.amazonaws.com"
        },
      "Action": "sts:AssumeRole"
      }
    ]
   }
   ```

------

    Cree el rol AWS CLI mediante el siguiente comando.

   ```
   aws iam create-role --role-name dms-vpc-role --assume-role-policy-document file://dmsAssumeRolePolicyDocument.json                    
   ```

1.  Adjunte la política `AmazonDMSVPCManagementRole` a `dms-vpc-role` utilizando el siguiente comando.

   ```
   aws iam attach-role-policy --role-name dms-vpc-role --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSVPCManagementRole                    
   ```

**Para crear el rol de dms-cloudwatch-logs-role IAM para usarlo con la API AWS CLI o AWS DMS**

1.  Cree un archivo JSON con la política de IAM siguiente. Asigne el nombre al archivo JSON `dmsAssumeRolePolicyDocument2.json`. 

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

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
      {
        "Effect": "Allow",
        "Principal": {
           "Service": "dms.amazonaws.com"
        },
      "Action": "sts:AssumeRole"
      }
    ]
   }
   ```

------

    Cree el rol AWS CLI mediante el siguiente comando.

   ```
   aws iam create-role --role-name dms-cloudwatch-logs-role --assume-role-policy-document file://dmsAssumeRolePolicyDocument2.json                    
   ```

1.  Adjunte la política `AmazonDMSCloudWatchLogsRole` a `dms-cloudwatch-logs-role` utilizando el siguiente comando.

   ```
   aws iam attach-role-policy --role-name dms-cloudwatch-logs-role --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSCloudWatchLogsRole                    
   ```

Si utiliza Amazon Redshift como base de datos de destino, debe crear el rol de IAM `dms-access-for-endpoint` para proporcionar acceso a Amazon S3.

**Para crear el rol de dms-access-for-endpoint IAM para usarlo con Amazon Redshift como base de datos de destino**

1. Cree un archivo JSON con la política de IAM siguiente. Asigne el nombre al archivo JSON `dmsAssumeRolePolicyDocument3.json`. 

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

****  

   ```
    {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "1",
         "Effect": "Allow",
         "Principal": {
           "Service": "dms.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       },
       {
         "Sid": "2",
         "Effect": "Allow",
         "Principal": {
           "Service": "redshift.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1.  Cree el rol AWS CLI mediante el siguiente comando.

   ```
     aws iam create-role --role-name dms-access-for-endpoint --assume-role-policy-document file://dmsAssumeRolePolicyDocument3.json                   
   ```

1.  Adjunte la política `AmazonDMSRedshiftS3Role` al rol `dms-access-for-endpoint` utilizando el siguiente comando.

   ```
   aws iam attach-role-policy --role-name dms-access-for-endpoint \
       --policy-arn arn:aws:iam::aws:policy/service-role/AmazonDMSRedshiftS3Role
   ```

Ahora debe disponer de las políticas de IAM para utilizar la AWS DMS API AWS CLI o.

# Prevención de la sustitución confusa entre servicios
<a name="cross-service-confused-deputy-prevention"></a>

El problema de la sustitución confusa es un problema de seguridad en el que una entidad que no tiene permiso para realizar una acción puede obligar a una entidad con más privilegios a realizar la acción. En AWS, la suplantación de identidad entre servicios puede provocar un confuso problema de diputado. La suplantación entre servicios puede producirse cuando un servicio (el *servicio que lleva a cabo las llamadas*) llama a otro servicio (el *servicio al que se llama*). El servicio que lleva a cabo las llamadas se puedes manipular para utilizar sus permisos a fin de actuar en función de los recursos de otro cliente de una manera en la que no debe tener permiso para acceder. Para evitarlo, AWS proporciona herramientas que lo ayudan a proteger sus datos para todos los servicios con entidades principales de servicio a las que se les ha dado acceso a los recursos de su cuenta.

Se recomienda utilizar las claves de contexto de condición [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount)global [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)y las claves de contexto en las políticas de recursos para limitar los permisos que se AWS Database Migration Service otorgan a otro servicio al recurso. Si el valor de `aws:SourceArn` no contiene el ID de cuenta, como un nombre de instancia de replicación (ARN) de AWS DMS , debe utilizar ambas claves de contexto de condición global para limitar los permisos. Si utiliza claves de contexto de condición global y el valor de `aws:SourceArn` contiene el ID de cuenta, el valor de `aws:SourceAccount` y la cuenta en el valor de `aws:SourceArn` deben utilizar el mismo ID de cuenta cuando se utiliza en la misma instrucción de política. Utiliza `aws:SourceArn` si desea que solo se asocie un recurso al acceso entre servicios. Utiliza `aws:SourceAccount` si quiere permitir que cualquier recurso de esa cuenta se asocie al uso entre servicios.

AWS DMS admite opciones alternativas confusas a partir de la versión 3.4.7 y versiones posteriores. Para obtener más información, consulte [AWS Notas de la versión 3.4.7 de Database Migration Service](CHAP_ReleaseNotes.md#CHAP_ReleaseNotes.DMS347). Si la instancia de replicación utiliza la versión 3.4.6 de AWS DMS o una versión anterior, asegúrese de actualizar a la versión más reciente antes de configurar las opciones de suplentes confusos.

La forma más eficaz de protegerse contra el problema de la sustitución confusa es utilizar la clave de contexto de condición global de `aws:SourceArn` con el ARN completo del recurso. Si no conoce el ARN completo del recurso o si está especificando varios recursos, utilice la clave de condición de contexto global `aws:SourceArn` con caracteres comodines (`*`) para las partes desconocidas del ARN. Por ejemplo, `arn:aws:dms:*:123456789012:rep:*`. 

**Topics**
+ [Funciones de IAM que se pueden utilizar junto con la AWS DMS API para prevenir la confusión entre servicios](#cross-service-confused-deputy-prevention-dms-api)
+ [Política de IAM para almacenar las evaluaciones con comprobación previa en Amazon S3 para evitar suplentes confusos entre servicios](#cross-service-confused-deputy-prevention-s3)
+ [Uso de Amazon DynamoDB como punto de enlace de destino para evitar la AWS DMS confusión entre servicios](#cross-service-confused-deputy-prevention-dynamodb)

## Funciones de IAM que se pueden utilizar junto con la AWS DMS API para prevenir la confusión entre servicios
<a name="cross-service-confused-deputy-prevention-dms-api"></a>

Para utilizar la API AWS CLI o la AWS DMS API para la migración de su base de datos, debe añadir las funciones `dms-vpc-role` y de `dms-cloudwatch-logs-role` IAM a su AWS cuenta antes de poder utilizar las funciones de. AWS DMS Para obtener más información, consulte [Crear los roles de IAM para usarlos con AWS DMS](security-iam.md#CHAP_Security.APIRole).

En el siguiente ejemplo, se muestran las políticas para usar el rol `dms-vpc-role` con la instancia de replicación `my-replication-instance`. Utilice estas políticas para evitar el problema de los suplentes confusos.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
        "Sid": "AllowDMSAssumeRole",
        "Effect": "Allow",
        "Action": "sts:AssumeRole",
        "Resource": "*",
        "Condition": {
            "StringEquals": {
                "AWS:SourceAccount": "111122223333"
         },
         "ArnLike": {
             "aws:SourceArn": "arn:aws:dms:*:123456789012:*"
         }
      }
    }
  ]
}
```

------

## Política de IAM para almacenar las evaluaciones con comprobación previa en Amazon S3 para evitar suplentes confusos entre servicios
<a name="cross-service-confused-deputy-prevention-s3"></a>

Para almacenar los resultados de la evaluación previa en el bucket de S3, debe crear una política de IAM que permita a AWS DMS administrar los objetos en Amazon S3. Para obtener más información, consulte [Crear recursos de IAM](CHAP_Tasks.AssessmentReport.Prerequisites.md#CHAP_Tasks.AssessmentReport.Prerequisites.IAM).

El siguiente ejemplo muestra una política de confianza con condiciones secundarias confusas que se establecen en un rol de IAM y que permiten acceder AWS DMS a todas las tareas y ejecuciones de evaluación con una cuenta de usuario específica.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowDMSAssumeRole",
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "AWS:SourceAccount": "111122223333"
        },
        "ArnLike": {
            "aws:SourceArn": [
                "arn:aws:dms:*:123456789012:assessment-run:*",
                "arn:aws:dms:*:123456789012:task:*"
          ]
        }
      }
    }
  ]
}
```

------

## Uso de Amazon DynamoDB como punto de enlace de destino para evitar la AWS DMS confusión entre servicios
<a name="cross-service-confused-deputy-prevention-dynamodb"></a>

Para utilizar Amazon DynamoDB como punto final de destino para la migración de su base de datos, debe crear el rol de IAM que AWS DMS permita asumir y conceder acceso a las tablas de DynamoDB. A continuación, utilice esta función cuando cree el punto de conexión de DynamoDB de destino en AWS DMS. Para obtener más información, consulte [Uso de Amazon DynamoDB como destino](CHAP_Target.DynamoDB.md).

El siguiente ejemplo muestra una política de confianza con condiciones supletorias confusas que se establecen en un rol de IAM y que permiten a todos los AWS DMS puntos finales acceder a las tablas de DynamoDB.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AllowDMSAssumeRole",
      "Effect": "Allow",
      "Action": "sts:AssumeRole",
      "Resource": "*",
      "Condition": {
      "StringEquals": {
          "AWS:SourceAccount": "111122223333"
        },
        "ArnLike": {
        "aws:SourceArn": [
            "arn:aws:dms:*:123456789012:assessment-run:*",
            "arn:aws:dms:*:123456789012:task:*"
            ]
         }
      }
    }
  ]
}
```

------

# AWS políticas gestionadas para AWS Database Migration Service
<a name="security-iam-awsmanpol"></a>

**Topics**
+ [AWS política gestionada: Amazon DMSVPCManagement Role](#security-iam-awsmanpol-AmazonDMSVPCManagementRole)
+ [AWS política gestionada: AWSDMSServerless ServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy)
+ [AWS política gestionada: Amazon DMSCloud WatchLogsRole](#security-iam-awsmanpol-AmazonDMSCloudWatchLogsRole)
+ [AWS política gestionada: AWSDMSFleet AdvisorServiceRolePolicy](#security-iam-awsmanpol-AWSDMSFleetAdvisorServiceRolePolicy)
+ [AWS política gestionada: Amazon DMSRedshift S3Role](#security-iam-awsmanpol-AmazonDMSRedshiftS3Role)
+ [AWS DMS actualizaciones de las políticas AWS gestionadas](#security-iam-awsmanpol-updates)

## AWS política gestionada: Amazon DMSVPCManagement Role
<a name="security-iam-awsmanpol-AmazonDMSVPCManagementRole"></a>

Esta política está asociada al `dms-vpc-role` rol, lo que le AWS DMS permite realizar acciones en su nombre.

Esta política otorga a los colaboradores permisos que permiten AWS DMS administrar los recursos de la red.

**Detalles de los permisos**

Esta política incluye las operaciones siguientes:
+ `ec2:CreateNetworkInterface`— AWS DMS necesita este permiso para crear interfaces de red. Estas interfaces son esenciales para que la instancia de replicación de AWS DMS se conecte a las bases de datos de origen y de destino.
+ `ec2:DeleteNetworkInterface`— AWS DMS necesita este permiso para limpiar las interfaces de red que creó una vez que ya no sean necesarias. Esto ayuda a administrar los recursos y a evitar costos innecesarios.
+ `ec2:DescribeAvailabilityZones`: este permiso permite a AWS DMS recuperar información sobre las zonas de disponibilidad de una región. AWS DMS utiliza esta información para garantizar que aprovisiona los recursos en las zonas correctas para garantizar la redundancia y la disponibilidad.
+ `ec2:DescribeDhcpOptions`— AWS DMS recupera los detalles del conjunto de opciones de DHCP para la VPC especificada. Esta información es necesaria a fin de configurar la red de forma correcta para las instancias de replicación.
+ `ec2:DescribeInternetGateways`— AWS DMS puede necesitar este permiso para entender las pasarelas de Internet configuradas en la VPC. Esta información es crucial si la instancia de replicación o las bases de datos necesitan acceso a Internet.
+ `ec2:DescribeNetworkInterfaces`— AWS DMS recupera información sobre las interfaces de red existentes en la VPC. Esta información es necesaria AWS DMS para configurar las interfaces de red correctamente y garantizar una conectividad de red adecuada para el proceso de migración.
+ `ec2:DescribeSecurityGroups`— Los grupos de seguridad controlan el tráfico entrante y saliente a las instancias y los recursos. AWS DMS debe describir los grupos de seguridad para configurar correctamente las interfaces de red y garantizar una comunicación adecuada entre la instancia de replicación y las bases de datos.
+ `ec2:DescribeSubnets`— Este permiso permite AWS DMS enumerar las subredes de una VPC. AWS DMS utiliza esta información para lanzar instancias de replicación en las subredes correspondientes, asegurándose de que tengan la conectividad de red necesaria.
+ `ec2:DescribeVpcs`— VPCs La descripción es esencial AWS DMS para comprender el entorno de red en el que residen la instancia de replicación y las bases de datos. Esto incluye conocer los bloques de CIDR y otras configuraciones específicas de la VPC.
+ `ec2:ModifyNetworkInterfaceAttribute`— Este permiso es necesario AWS DMS para modificar los atributos de las interfaces de red que administra. Puede incluir el ajuste de la configuración para garantizar la conectividad y la seguridad.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
			"Sid": "Statement1",
			"Effect": "Allow",
			"Action": [
				"ec2:CreateNetworkInterface",
				"ec2:DeleteNetworkInterface",
				"ec2:DescribeAvailabilityZones",
				"ec2:DescribeDhcpOptions",
				"ec2:DescribeInternetGateways",
				"ec2:DescribeNetworkInterfaces",
				"ec2:DescribeSecurityGroups",
				"ec2:DescribeSubnets",
				"ec2:DescribeVpcs",
				"ec2:ModifyNetworkInterfaceAttribute"
			],
			"Resource": "*"
		}
    ]
}
```

------

## AWS política gestionada: AWSDMSServerless ServiceRolePolicy
<a name="security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy"></a>

Esta política está asociada al `AWSServiceRoleForDMSServerless` rol, lo que le AWS DMS permite realizar acciones en su nombre. Para obtener más información, consulte [Función vinculada al servicio para AWS DMS](slr-services-sl.md).

Esta política otorga a los colaboradores permisos que permiten AWS DMS administrar los recursos de replicación.

**Detalles de los permisos**

Esta política incluye los siguientes permisos.
+ **AWS DMS**— Permite a los directores interactuar con AWS DMS los recursos.
+ **Amazon S3**: permite a DMS crear un bucket de S3 para almacenar una evaluación previa a la migración. El bucket de S3 se crea para un usuario por región y su política de bucket limita el acceso únicamente al rol del servicio. 

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "id0",
            "Effect": "Allow",
            "Action": [
                "dms:CreateReplicationInstance",
                "dms:CreateReplicationTask"
            ],
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:req-tag/ResourceCreatedBy": "DMSServerless"
                }
            }
        },
        {
            "Sid": "id1",
            "Effect": "Allow",
            "Action": [
                "dms:DescribeReplicationInstances",
                "dms:DescribeReplicationTasks"
            ],
            "Resource": "*"
        },
        {
            "Sid": "id2",
            "Effect": "Allow",
            "Action": [
                "dms:StartReplicationTask",
                "dms:StopReplicationTask",
                "dms:ModifyReplicationTask",
                "dms:DeleteReplicationTask",
                "dms:ModifyReplicationInstance",
                "dms:DeleteReplicationInstance"
            ],
            "Resource": [
                "arn:aws:dms:*:*:rep:*",
                "arn:aws:dms:*:*:task:*"
            ],
            "Condition": {
                "StringEqualsIgnoreCase": {
                    "aws:ResourceTag/ResourceCreatedBy": "DMSServerless"
                }
            }
        },
        {
            "Sid": "id3",
            "Effect": "Allow",
            "Action": [
                "dms:TestConnection",
                "dms:DeleteConnection"
            ],
            "Resource": [
                "arn:aws:dms:*:*:rep:*",
                "arn:aws:dms:*:*:endpoint:*"
            ]
        },
        {
            "Sid": "id4",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObjectTagging"
            ],
            "Resource": [
                "arn:aws:s3:::dms-serverless-premigration-results-*",
                "arn:aws:s3:::dms-premigration-results-*"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "id5",
            "Effect": "Allow",
            "Action": [
                "s3:PutBucketPolicy",
                "s3:ListBucket",
                "s3:GetBucketLocation",
                "s3:CreateBucket"
            ],
            "Resource": [
                "arn:aws:s3:::dms-serverless-premigration-results-*",
                "arn:aws:s3:::dms-premigration-results-*"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        },
        {
            "Sid": "id6",
            "Effect": "Allow",
            "Action": [
                "dms:StartReplicationTaskAssessmentRun"
            ],
            "Resource": [
                "arn:aws:dms:*:*:task:*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "${aws:PrincipalAccount}"
                }
            }
        }
    ]
}
```

## AWS política gestionada: Amazon DMSCloud WatchLogsRole
<a name="security-iam-awsmanpol-AmazonDMSCloudWatchLogsRole"></a>

Esta política está asociada al `dms-cloudwatch-logs-role` rol, lo que le AWS DMS permite realizar acciones en su nombre. Para obtener más información, consulte [Uso de roles vinculados a servicios para AWS DMS](using-service-linked-roles.md).

Esta política otorga a los colaboradores permisos que AWS DMS permiten publicar registros de replicación en CloudWatch registros.

**Detalles de los permisos**

Esta política incluye los siguientes permisos.




+ `logs`— Permite a los directores publicar registros en CloudWatch Logs. Este permiso es necesario para AWS DMS poder utilizarlo CloudWatch para mostrar los registros de replicación.



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDescribeOnAllLogGroups",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogGroups"
            ],
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "AllowDescribeOfAllLogStreamsOnDmsTasksLogGroup",
            "Effect": "Allow",
            "Action": [
                "logs:DescribeLogStreams"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*"
            ]
        },
        {
            "Sid": "AllowCreationOfDmsLogGroups",
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*:log-stream:"
            ]
        },
        {
            "Sid": "AllowCreationOfDmsLogStream",
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogStream"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*:log-stream:dms-task-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*:log-stream:dms-serverless-*"
            ]
        },
        {
            "Sid": "AllowUploadOfLogEventsToDmsLogStream",
            "Effect": "Allow",
            "Action": [
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:*:*:log-group:dms-tasks-*:log-stream:dms-task-*",
                "arn:aws:logs:*:*:log-group:dms-serverless-replication-*:log-stream:dms-serverless-*"
            ]
        }
    ]
}
```

------

## AWS política gestionada: AWSDMSFleet AdvisorServiceRolePolicy
<a name="security-iam-awsmanpol-AWSDMSFleetAdvisorServiceRolePolicy"></a>





No puede adjuntarse AWSDMSFleet AdvisorServiceRolePolicy a sus entidades de IAM. Esta política está asociada a una función vinculada al servicio que permite a AWS DMS Fleet Advisor realizar acciones en tu nombre. Para obtener más información, consulte [Uso de roles vinculados a servicios para AWS DMS](using-service-linked-roles.md).



Esta política otorga a los colaboradores permisos que permiten a AWS DMS Fleet Advisor publicar CloudWatch las estadísticas de Amazon.



**Detalles de los permisos**

Esta política incluye los siguientes permisos.




+ `cloudwatch`— Permite a los directores publicar puntos de datos métricos en Amazon CloudWatch. Este permiso es necesario para que AWS DMS Fleet Advisor lo pueda utilizar CloudWatch para mostrar gráficos con métricas de bases de datos.



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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Resource": "*",
        "Action": "cloudwatch:PutMetricData",
        "Condition": {
            "StringEquals": {
                "cloudwatch:namespace": "AWS/DMS/FleetAdvisor"
            }
        }
    }
}
```

------

## AWS política gestionada: Amazon DMSRedshift S3Role
<a name="security-iam-awsmanpol-AmazonDMSRedshiftS3Role"></a>

Esta política proporciona permisos que permiten administrar AWS DMS la configuración de S3 para los puntos finales de Redshift.

**Detalles de los permisos**

Esta política incluye las operaciones siguientes:
+ `s3:CreateBucket`: permite a DMS crear buckets de S3 con el prefijo “dms-”.
+ `s3:ListBucket`: Permite a DMS enumerar el contenido de los buckets de S3 con el prefijo “dms-”.
+ `s3:DeleteBucket `: permite a DMS eliminar buckets de S3 con el prefijo “dms-”.
+ `s3:GetBucketLocation`: permite a DMS obtener la región en la que se encuentra un bucket de S3.
+ `s3:GetObject`: permite a DMS obtener objetos de buckets de S3 con el prefijo “dms-”.
+ `s3:PutObject`: permite a DMS añadir objetos a buckets de S3 con el prefijo “dms-”.
+ `s3:DeleteObject`: permite a DMS eliminar objetos de los buckets de S3 con el prefijo “dms-”.
+ `s3:GetObjectVersion`: permite a DMS obtener versiones específicas de objetos en buckets versionados
+ `s3:GetBucketPolicy`: permite a DMS obtener las políticas de buckets.
+ `s3:PutBucketPolicy`: permite a DMS crear o actualizar políticas de buckets.
+ `s3:GetBucketAcl`- Permite a DMS recuperar las listas de control de acceso a los buckets () ACLs
+ `s3:PutBucketVersioning`: permite a DMS activar o suspender el control de versiones en los buckets.
+ `s3:GetBucketVersioning`: permite a DMS obtener el estado de control de versiones de los buckets.
+ `s3:PutLifecycleConfiguration`: permite a DMS crear o actualizar las reglas del ciclo de vida de los buckets.
+ `s3:GetLifecycleConfiguration`: permite a DMS obtener las reglas del ciclo de vida configuradas para los buckets.
+ `s3:DeleteBucketPolicy`: permite a DMS eliminar políticas de buckets.

Todos estos permisos se aplican únicamente a los recursos con un patrón ARN: `arn:aws:s3:::dms-*`

**Documento de política de JSON**

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

****  

```
{
  "Version":"2012-10-17",		 	 	  
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:CreateBucket",
        "s3:ListBucket", 
        "s3:DeleteBucket",
        "s3:GetBucketLocation",
        "s3:GetObject",
        "s3:PutObject",
        "s3:DeleteObject",
        "s3:GetObjectVersion",
        "s3:GetBucketPolicy",
        "s3:PutBucketPolicy",
        "s3:GetBucketAcl",
        "s3:PutBucketVersioning",
        "s3:GetBucketVersioning",
        "s3:PutLifecycleConfiguration",
        "s3:GetLifecycleConfiguration",
        "s3:DeleteBucketPolicy"
      ],
      "Resource": "arn:aws:s3:::dms-*"
    }
  ]
}
```

------





## AWS DMS actualizaciones de las políticas AWS gestionadas
<a name="security-iam-awsmanpol-updates"></a>



Consulte los detalles sobre las actualizaciones de las políticas AWS administradas AWS DMS desde que este servicio comenzó a realizar el seguimiento de estos cambios. Para recibir alertas automáticas sobre los cambios en esta página, suscríbase a la fuente RSS de la página del historial del AWS DMS documento.




| Cambio | Descripción | Fecha | 
| --- | --- | --- | 
|  [AWSDMSServerlessServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy): cambio  |  AWS DMS actualizado `AWSDMSServerlessServiceRolePolicy` para permitir a DMS crear depósitos de S3 e incluir los resultados de las evaluaciones previas a la migración en esos cubos para tareas de replicación no relacionadas con el DMS sin servidor.  | 5 de noviembre de 2025 | 
|  [Función vinculada al servicio para AWS DMS Serverless](slr-services-sl.md): cambio  |  AWS DMS actualizado `AWSDMSServerlessServiceRolePolicy` para permitir la ejecución de `dms:StartReplicationTaskAssessmentRun` evaluaciones previas a la migración. AWS DMS también se actualizó la función vinculada a servicios sin servidor para crear depósitos de S3 e incluir los resultados de la evaluación previa a la migración en esos grupos.  | 14 de febrero de 2025 | 
|  [AWSDMSServerlessServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy): cambio  |  AWS DMS se agregó`dms:ModifyReplicationTask`, la cual es requerida por AWS DMS Serverless para llamar a la operación y modificar una tarea de replicación`ModifyReplicationTask`. AWS DMS se agregó `dms:ModifyReplicationInstance` lo que AWS DMS Serverless requiere para llamar a la `ModifyReplicationInstance` operación y modificar una instancia de replicación.  | 17 de enero de 2025 | 
|  [DMSVPCManagementRol de Amazon](#security-iam-awsmanpol-AmazonDMSVPCManagementRole): cambio  |  AWS DMS agregado `ec2:DescribeDhcpOptions` y `ec2:DescribeNetworkInterfaces` operaciones que permiten AWS DMS administrar la configuración de red en su nombre.  | 17 de junio de 2024 | 
|  [AWSDMSServerlessServiceRolePolicy](#security-iam-awsmanpol-AWSDMSServerlessServiceRolePolicy): política nueva  |  AWS DMS agregó el `AWSDMSServerlessServiceRolePolicy` rol para permitir AWS DMS crear y administrar servicios en su nombre, como la publicación de CloudWatch métricas de Amazon.  | 22 de mayo de 2023 | 
|  [Amazon DMSCloud WatchLogsRole](#security-iam-awsmanpol-AmazonDMSCloudWatchLogsRole) — Cambiar  |  AWS DMS agregó el ARN de los recursos sin servidor a cada uno de los permisos otorgados, para permitir cargar registros de replicación desde configuraciones de AWS DMS replicación sin servidor a Logs. CloudWatch   | 22 de mayo de 2023 | 
|  [AWSDMSFleetAdvisorServiceRolePolicy](#security-iam-awsmanpol-AWSDMSFleetAdvisorServiceRolePolicy): política nueva  |  AWS DMS Fleet Advisor ha añadido una nueva política para permitir la publicación de puntos de datos métricos en Amazon CloudWatch.  | 6 de marzo de 2023 | 
|  AWS DMS comenzó a rastrear los cambios  |  AWS DMS comenzó a realizar un seguimiento de los cambios de sus políticas AWS gestionadas.  | 6 de marzo de 2023 | 

# Validación de conformidad para AWS Database Migration Service
<a name="dms-compliance"></a>

Los auditores externos evalúan la seguridad y el cumplimiento AWS Database Migration Service como parte de varios programas de AWS cumplimiento. Incluyen los siguientes programas:
+  SOC
+ PCI
+ ISO
+ FedRAMP
+ DoD CC SRG
+ HIPAA BAA
+ MTCS
+ CS
+ K-ISMS
+ ENS High
+ OSPAR
+ HITRUST CSF

Para obtener una lista de AWS los servicios incluidos en el ámbito de los programas de cumplimiento específicos, consulte los [AWS servicios incluidos en el ámbito de aplicación por programa de cumplimiento](https://aws.amazon.com/compliance/services-in-scope/) y . Para obtener información general, consulte los programas de [AWS cumplimiento, los programas AWS](https://aws.amazon.com/compliance/programs/) .

Puede descargar informes de auditoría de terceros utilizando AWS Artifact. Para obtener más información, consulta [Descarga de informes en AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/downloading-documents.html) .

Su responsabilidad de cumplimiento al AWS DMS utilizarlos viene determinada por la confidencialidad de sus datos, los objetivos de cumplimiento de su empresa y las leyes y reglamentos aplicables. AWS proporciona los siguientes recursos para ayudar con el cumplimiento:
+ [Guías de inicio rápido de seguridad y conformidad](https://aws.amazon.com/quickstart/?awsf.quickstart-homepage-filter=categories%23security-identity-compliance): estas guías de implementación tratan consideraciones sobre arquitectura y ofrecen pasos para implementar los entornos de referencia centrados en la seguridad y la conformidad en AWS.
+ Documento técnico sobre [cómo diseñar la arquitectura para la seguridad y el cumplimiento de la HIPAA en Amazon Web Services: en este documento técnico](https://docs.aws.amazon.com/whitepapers/latest/architecting-hipaa-security-and-compliance-on-aws/architecting-hipaa-security-and-compliance-on-aws.html) se describe cómo pueden utilizar las empresas para crear aplicaciones compatibles con la HIPAA. AWS 
+ [AWS recursos de cumplimiento](https://aws.amazon.com/compliance/resources/): esta colección de trabajo y guías puede aplicarse a su sector y ubicación.
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html)— Este AWS servicio evalúa en qué medida las configuraciones de sus recursos cumplen con las prácticas internas, las directrices del sector y las normativas.
+ [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)— Este AWS servicio proporciona una visión integral del estado de su seguridad AWS que le ayuda a comprobar el cumplimiento de los estándares y las mejores prácticas del sector de la seguridad.

# Resiliencia en AWS Database Migration Service
<a name="disaster-recovery-resiliency"></a>

La infraestructura AWS global se basa en AWS regiones y zonas de disponibilidad. AWS Las regiones proporcionan varias zonas de disponibilidad aisladas y separadas físicamente, que están conectadas mediante redes de baja latencia, alto rendimiento y alta redundancia. Con las zonas de disponibilidad, puedes diseñar y utilizar aplicaciones y bases de datos que realizan una conmutación por error automática entre zonas de disponibilidad sin interrupciones. Las zonas de disponibilidad tienen una mayor disponibilidad, tolerancia a errores y escalabilidad que las infraestructuras tradicionales de centros de datos únicos o múltiples. 

[Para obtener más información sobre AWS las regiones y las zonas de disponibilidad, consulte la infraestructura global.AWS](https://aws.amazon.com/about-aws/global-infrastructure/)

Además de la infraestructura AWS global, AWS DMS proporciona alta disponibilidad y soporte de conmutación por error para una instancia de replicación mediante un despliegue Multi-AZ cuando se elige la opción **Multi-AZ**.

En una implementación Multi-AZ, AWS DMS aprovisiona y mantiene automáticamente una réplica en espera de la instancia de replicación en una zona de disponibilidad diferente. La instancia de replicación principal se replica sincrónicamente en la réplica en espera. Si la instancia de replicación principal falla o no responde, la instancia en espera reanuda cualquier tarea en ejecución con una interrupción mínima. Debido a que el nodo principal replica constantemente su estado a la espera, la implementación Multi-AZ incurre en algunos costos de desempeño.

Para obtener más información sobre cómo trabajar con implementaciones Multi-AZ, consulte [Trabajar con una instancia AWS DMS de replicación](CHAP_ReplicationInstance.md).

# Seguridad de la infraestructura en AWS Database Migration Service
<a name="infrastructure-security"></a>

Como servicio gestionado, AWS Database Migration Service está protegido por la seguridad de la red AWS global. Para obtener información sobre los servicios AWS de seguridad y cómo se AWS protege la infraestructura, consulte [Seguridad AWS en la nube](https://aws.amazon.com/security/). Para diseñar su AWS entorno utilizando las mejores prácticas de seguridad de la infraestructura, consulte [Protección de infraestructuras en un marco](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/infrastructure-protection.html) de buena * AWS arquitectura basado en el pilar de la seguridad*.

Utiliza las llamadas a la API AWS publicadas para acceder a AWS DMS través de la red. Los clientes deben admitir lo siguiente:
+ Seguridad de la capa de transporte (TLS). Exigimos TLS 1.2 y recomendamos TLS 1.3.
+ Conjuntos de cifrado con confidencialidad directa total (PFS) como DHE (Ephemeral Diffie-Hellman) o ECDHE (Elliptic Curve Ephemeral Diffie-Hellman). La mayoría de los sistemas modernos como Java 7 y posteriores son compatibles con estos modos.

Puede llamar a estas operaciones de API desde cualquier ubicación de la red. AWS DMS también admite políticas de acceso basadas en recursos, que pueden especificar restricciones de acciones y recursos, por ejemplo, en función de la dirección IP de origen. Además, puede utilizar AWS DMS políticas para controlar el acceso desde puntos de enlace de Amazon VPC específicos o nubes privadas virtuales específicas (). VPCs En efecto, esto aísla el acceso a la red a un AWS DMS recurso determinado únicamente de la VPC específica de la red. AWS Para obtener más información sobre el uso de políticas de acceso basadas en recursos AWS DMS, incluidos ejemplos, consulte. [Control de acceso detallado mediante nombres de recursos y etiquetas](CHAP_Security.FineGrainedAccess.md)

Para limitar sus comunicaciones a una sola VPC, puede crear un punto final de interfaz de VPC que le permita conectarse a través de ella. AWS DMS AWS DMS AWS PrivateLink AWS PrivateLink ayuda a garantizar que cualquier llamada AWS DMS y los resultados asociados permanezcan confinados a la VPC específica para la que se creó el punto final de la interfaz. A continuación, puede especificar la URL de este punto final de la interfaz como opción con cada AWS DMS comando que ejecute mediante el SDK AWS CLI o un SDK. Esto ayuda a garantizar que todas sus comunicaciones AWS DMS permanezcan confinadas a la VPC y, de lo contrario, sean invisibles para la Internet pública.

**Creación de un punto de conexión de interfaz para acceder al DMS en una sola VPC**

1. Inicie sesión en la consola de Amazon VPC Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)

1. En el panel de navegación, elija **Puntos de conexión**. Esto abre la página **Crear puntos de enlace**, en la que puede crear el punto final de la interfaz desde una AWS DMS VPC a.

1. Elija **AWS los servicios** y, a continuación, busque y elija un valor para el **nombre del servicio**, en este caso AWS DMS del siguiente formulario.

   ```
   com.amazonaws.region.dms
   ```

   Aquí, *`region`* especifica la AWS región en la que AWS DMS se ejecuta, por ejemplo`com.amazonaws.us-west-2.dms`.

1. Para **VPC**, elija la VPC para la que crear el punto de conexión de la interfaz, por ejemplo `vpc-12abcd34`.

1. Elija un valor para **Zona de disponibilidad** y para **ID de subred**. Estos valores deben indicar una ubicación en la que se pueda ejecutar el punto de conexión de AWS DMS elegido, por ejemplo, `us-west-2a (usw2-az1)` y `subnet-ab123cd4`.

1. Elija **Habilitar nombre de DNS** para crear el punto de conexión con un nombre de DNS. Este nombre de DNS consta del ID del punto de conexión (`vpce-12abcd34efg567hij`) separado por guiones y una cadena aleatoria (`ab12dc34`). Se separan del nombre del servicio por un punto en el orden inverso de separación por puntos, con `vpce` agregado (`dms.us-west-2.vpce.amazonaws.com`). 

   Un ejemplo es `vpce-12abcd34efg567hij-ab12dc34.dms.us-west-2.vpce.amazonaws.com`.

1. Para **Grupo de seguridad**, elija un grupo de seguridad que usar para el punto de conexión.

   Cuando configure el grupo de seguridad, asegúrese de permitir las llamadas HTTPS salientes desde su interior. Para obtener más información, consulte [Creación de grupos de seguridad](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html#CreatingSecurityGroups) en la *Guía del usuario de Amazon VPC*. 

1. Elija **Acceso total** o un valor personalizado para la **política**. Por ejemplo, puede elegir una política personalizada similar a la siguiente que restrinja el acceso del punto de conexión a determinadas acciones y recursos.

   ```
   {
     "Statement": [
       {
         "Action": "dms:*",
         "Effect": "Allow",
         "Resource": "*",
         "Principal": "*"
       },
       {
         "Action": [
           "dms:ModifyReplicationInstance",
           "dms:DeleteReplicationInstance"
         ],
         "Effect": "Deny",
         "Resource": "arn:aws:dms:us-west-2:<account-id>:rep:<replication-instance-id>",
         "Principal": "*"
       }
     ]
   }
   ```

   En este caso, la política de ejemplo permite cualquier llamada a la AWS DMS API, excepto eliminar o modificar una instancia de replicación específica.

Ahora puede especificar una URL formada con el nombre de DNS creado en el paso 6 como opción. Debe especificarlo para cada comando de AWS DMS CLI u operación de API para acceder a la instancia de servicio mediante el punto final de la interfaz creado. Por ejemplo, es posible que ejecute el comando `DescribeEndpoints` de la CLI de DMS en esta VPC como se muestra a continuación.

```
$ aws dms describe-endpoints --endpoint-url https://vpce-12abcd34efg567hij-ab12dc34.dms.us-west-2.vpce.amazonaws.com
```

Si ha habilitado la opción de DNS privado, no es necesario que especifique la URL del punto de conexión en la solicitud.

*Para obtener más información sobre la creación y el uso de puntos de enlace de la interfaz de VPC (incluida la activación de la opción de DNS privado), consulte los puntos de enlace de interfaz de [VPC () en AWS PrivateLink la Guía del](https://docs.aws.amazon.com/vpc/latest/userguide/vpce-interface.html) usuario de Amazon VPC.*

# Control de acceso detallado mediante nombres de recursos y etiquetas
<a name="CHAP_Security.FineGrainedAccess"></a>

Puede usar nombres y etiquetas de recursos basados en Amazon Resource Names (ARNs) para administrar el acceso a AWS DMS los recursos. Para ello, define la acción permitida o incluye declaraciones condicionales en las políticas de IAM. 

## Uso de nombres de recursos para controlar el acceso
<a name="CHAP_Security.FineGrainedAccess.ResourceName"></a>

Puede crear una cuenta de usuario de IAM y asignar una política basada en el ARN del recurso de AWS DMS .

La siguiente política deniega el acceso a la instancia de AWS DMS replicación con el ARN *arn:aws:dms:us-east- 1:152683116:rep*: ZTOXGLIXMIHKITV: DOH67

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dms:us-east-1:111122223333:rep:DOH67ZTOXGLIXMIHKITV"
        }
    ]
}
```

------

Por ejemplo, los siguientes comandos fallan cuando la política está en vigor.

```
$ aws dms delete-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV"

A client error (AccessDeniedException) occurred when calling the DeleteReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV

$ aws dms modify-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV"

A client error (AccessDeniedException) occurred when calling the ModifyReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:ModifyReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV
```

También puede especificar políticas de IAM que limiten AWS DMS el acceso a los puntos finales y a las tareas de replicación.

La siguiente política limita el acceso a un AWS DMS punto final mediante el ARN del punto final.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dms:us-east-1:111122223333:endpoint:D6E37YBXTNHOA6XRQSZCUGX"
        }
    ]
}
```

------

Por ejemplo, los siguientes comandos fallan cuando la política que utiliza el ARN del punto de enlace está en vigor:

```
$ aws dms delete-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX"

A client error (AccessDeniedException) occurred when calling the DeleteEndpoint operation: 
User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: dms:DeleteEndpoint 
on resource: arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX

$ aws dms modify-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX"     

A client error (AccessDeniedException) occurred when calling the ModifyEndpoint operation: 
User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: dms:ModifyEndpoint 
on resource: arn:aws:dms:us-east-1:152683116:endpoint:D6E37YBXTNHOA6XRQSZCUGX
```

La siguiente política limita el acceso a una AWS DMS tarea mediante el ARN de la tarea.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "arn:aws:dms:us-east-1:111122223333:task:UO3YR4N47DXH3ATT4YMWOIT"
        }
    ]
}
```

------

Por ejemplo, los siguientes comandos fallan cuando la política que utiliza el ARN de la tarea está en vigor:

```
$ aws dms delete-replication-task 
   --replication-task-arn "arn:aws:dms:us-east-1:152683116:task:UO3YR4N47DXH3ATT4YMWOIT"

A client error (AccessDeniedException) occurred when calling the DeleteReplicationTask operation: 
User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: dms:DeleteReplicationTask 
on resource: arn:aws:dms:us-east-1:152683116:task:UO3YR4N47DXH3ATT4YMWOIT
```

## Uso de etiquetas para controlar el acceso
<a name="CHAP_Security.FineGrainedAccess.Tags"></a>

AWS DMS define un conjunto de pares clave-valor comunes que están disponibles para su uso en las políticas definidas por el cliente sin requisitos de etiquetado adicionales. Para obtener más información sobre los recursos de etiquetado AWS DMS , consulte. [Etiquetado de recursos en AWS Database Migration Service](CHAP_Tagging.md) 

A continuación se enumeran las etiquetas estándar disponibles para su uso con AWS DMS: 
+  aws: CurrentTime — Representa la fecha y la hora de la solicitud, lo que permite restringir el acceso en función de criterios temporales. 
+  aws: EpochTime — Esta etiqueta es similar a la CurrentTime etiqueta aws: anterior, excepto que la hora actual se representa como el número de segundos transcurridos desde la época de Unix. 
+  aws: MultiFactorAuthPresent — Se trata de una etiqueta booleana que indica si la solicitud se firmó o no mediante una autenticación multifactorial. 
+  aws: MultiFactorAuthAge — Proporciona acceso a la antigüedad del token de autenticación multifactorial (en segundos). 
+  aws:principaltype: proporciona acceso al tipo de entidad principal (usuario, cuenta, usuario federado, etc.) para la solicitud actual. 
+  aws: SourceIp — Representa la dirección IP de origen del usuario que emite la solicitud. 
+  aws: UserAgent — Proporciona información sobre la aplicación cliente que solicita un recurso. 
+  aws:userid: proporciona acceso al ID del usuario que emite la solicitud. 
+  aws:username: proporciona acceso al nombre del usuario que emite la solicitud. 
+  dms: InstanceClass — Proporciona acceso al tamaño de procesamiento de los hosts de la instancia de replicación. 
+  dms: StorageSize — Proporciona acceso al tamaño del volumen de almacenamiento (en GB). 

También puede definir sus propias etiquetas. Las etiquetas definidas por el cliente son simples pares clave-valor que permanecen en el servicio de etiquetado. AWS Puede añadirlos a recursos de AWS DMS , incluidas las instancias de replicación, los puntos de enlace y las tareas. Estas etiquetas se asocian mediante declaraciones "condicionales" de IAM en las políticas y se hace referencia a ellas mediante una etiqueta condicional específica. Las claves de etiquetas tienen el prefijo "dms", el tipo de recurso y el prefijo "tag". Se muestra a continuación el formato de la etiqueta.

```
dms:{resource type}-tag/{tag key}={tag value}
```

Por ejemplo, suponga que desea definir una política que permita únicamente que una llamada a la API tenga éxito para una instancia de replicación que contiene la etiqueta "stage=production". La siguiente declaración condicional se asocia a un recurso con la etiqueta proporcionada.

```
"Condition":
{
    "streq":
        {
            "dms:rep-tag/stage":"production"
        }
}
```

Añada la siguiente etiqueta a una instancia de replicación que coincida con esta condición de la política. 

```
stage production
```

Además de las etiquetas ya asignadas a AWS DMS los recursos, también se pueden escribir políticas para limitar las claves y los valores de las etiquetas que se pueden aplicar a un recurso determinado. En este caso, el prefijo de la etiqueta es "req". 

Por ejemplo, la siguiente declaración de la política limita las etiquetas que un usuario puede asignar a un recurso determinado a una lista específica de valores permitidos.

```
 "Condition":
{
    "streq":
        {
            "dms:rep-tag/stage": [ "production", "development", "testing" ]
        }
}
```

Los siguientes ejemplos de políticas limitan el acceso a un AWS DMS recurso en función de las etiquetas del recurso.

La siguiente política limita el acceso a una instancia de replicación donde el valor de la etiqueta es "Desktop" y la clave de la etiqueta es "Env":

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:rep-tag/Env": [
                        "Desktop"
                    ]
                }
            }
        }
    ]
}
```

------

Los siguientes comandos tienen éxito o se produce un error en función de la política de IAM que restringe el acceso cuando el valor de etiqueta es "Desktop" y la clave de etiqueta es "Env".

```
$ aws dms list-tags-for-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN 
   --endpoint-url http://localhost:8000                                   
{
    "TagList": [
        {
            "Value": "Desktop", 
            "Key": "Env"
        }
    ]
}

$ aws dms delete-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN"
A client error (AccessDeniedException) occurred when calling the DeleteReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN

$ aws dms modify-replication-instance 
   --replication-instance-arn "arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN" 

A client error (AccessDeniedException) occurred when calling the ModifyReplicationInstance 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:ModifyReplicationInstance on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN

$ aws dms add-tags-to-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN 
   --tags Key=CostCenter,Value=1234 

A client error (AccessDeniedException) occurred when calling the AddTagsToResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:AddTagsToResource on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN

$ aws dms remove-tags-from-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN 
   --tag-keys Env             

A client error (AccessDeniedException) occurred when calling the RemoveTagsFromResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:RemoveTagsFromResource on resource: arn:aws:dms:us-east-1:152683116:rep:46DHOU7JOJYOJXWDOZNFEN
```

La siguiente política limita el acceso a un AWS DMS punto final en el que el valor de la etiqueta es «Desktop» y la clave de la etiqueta es «Env».

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:endpoint-tag/Env": [
                        "Desktop"
                    ]
                }
            }
        }
    ]
}
```

------

Los siguientes comandos tienen éxito o se produce un error en función de la política de IAM que restringe el acceso cuando el valor de etiqueta es "Desktop" y la clave de etiqueta es "Env".

```
$ aws dms list-tags-for-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I
{
    "TagList": [
        {
            "Value": "Desktop", 
            "Key": "Env"
        }
    ]
}

$ aws dms delete-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I"

A client error (AccessDeniedException) occurred when calling the DeleteEndpoint 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteEndpoint on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I

$ aws dms modify-endpoint 
   --endpoint-arn "arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I"    

A client error (AccessDeniedException) occurred when calling the ModifyEndpoint 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:ModifyEndpoint on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I

$ aws dms add-tags-to-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I 
   --tags Key=CostCenter,Value=1234

A client error (AccessDeniedException) occurred when calling the AddTagsToResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:AddTagsToResource on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I

$ aws dms remove-tags-from-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I 
   --tag-keys Env

A client error (AccessDeniedException) occurred when calling the RemoveTagsFromResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:RemoveTagsFromResource on resource: arn:aws:dms:us-east-1:152683116:endpoint:J2YCZPNGOLFY52344IZWA6I
```

La siguiente política limita el acceso a una tarea de replicación donde el valor de la etiqueta es "Desktop" y la clave de la etiqueta es "Env".

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "dms:*"
            ],
            "Effect": "Deny",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "dms:task-tag/Env": [
                        "Desktop"
                    ]
                }
            }
        }
    ]
}
```

------

Los siguientes comandos tienen éxito o se produce un error en función de la política de IAM que restringe el acceso cuando el valor de etiqueta es "Desktop" y la clave de etiqueta es "Env".

```
$ aws dms list-tags-for-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3
{
    "TagList": [
        {
            "Value": "Desktop", 
            "Key": "Env"
        }
    ]
}

$ aws dms delete-replication-task 
   --replication-task-arn "arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3"

A client error (AccessDeniedException) occurred when calling the DeleteReplicationTask 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:DeleteReplicationTask on resource: arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3

$ aws dms add-tags-to-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3 
   --tags Key=CostCenter,Value=1234

A client error (AccessDeniedException) occurred when calling the AddTagsToResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:AddTagsToResource on resource: arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3

$ aws dms remove-tags-from-resource 
   --resource-name arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3 
   --tag-keys Env

A client error (AccessDeniedException) occurred when calling the RemoveTagsFromResource 
operation: User: arn:aws:iam::152683116:user/dmstestusr is not authorized to perform: 
dms:RemoveTagsFromResource on resource: arn:aws:dms:us-east-1:152683116:task:RB7N24J2XBUPS3RFABZTG3
```

## Cifrado para migraciones AWS DMS homogéneas
<a name="CHAP_Security.Migrations"></a>

AWS DMS las migraciones homogéneas también cifran los recursos utilizados para las migraciones de datos, incluidos el almacenamiento y otros componentes. Si no especificas una clave gestionada por el cliente, las migraciones AWS DMS homogéneas utilizan automáticamente una clave propia para AWS cifrar tus recursos.

Cuando utilizas una clave gestionada por el cliente, las migraciones AWS DMS homogéneas crean concesiones en tu clave para que el servicio pueda cifrar y descifrar los recursos según sea necesario. Estas subvenciones se administran automáticamente como parte del ciclo de vida de la migración.

**Uso de una clave administrada por el cliente con migraciones homogéneas**

Para utilizar una clave gestionada por el cliente para la migración homogénea, añada los siguientes permisos a los permisos de IAM que debe conceder a la cuenta de usuario de IAM para utilizar las migraciones homogéneas: AWS DMS 

```
{
    "Effect": "Allow",
    "Action": [
        "kms:CreateGrant",
        "kms:DescribeKey",
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:GenerateDataKeyWithoutPlaintext"
    ],
    "Resource": "*",
    "Condition": {
        "StringEquals": {
            "kms:ViaService": [
                "dms.us-west-2.amazonaws.com", 
                "elasticfilesystem.us-west-2.amazonaws.com"
            ]
        }
    }
}
```

DMS creará una concesión interna para acceder a las claves de cifrado y administrarlas durante el proceso de migración. Para reducir aún más la CreateGrant operación, puede aplicar las siguientes limitaciones a su política de claves gestionada por el cliente:

```
{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::111122223333:role/ExampleRole"
  },
  "Action": "kms:CreateGrant",
  "Resource": "*",
  "Condition": {
    "ForAllValues:StringEquals": {
      "kms:GrantOperations": [
        "CreateGrant",
        "DescribeKey",
        "Encrypt",
        "Decrypt",
        "RetireGrant",
        "GenerateDataKeyWithoutPlaintext"
      ]
    },
    "StringEquals": {
      "kms:ViaService": [
            "dms.us-west-2.amazonaws.com", 
            "elasticfilesystem.us-west-2.amazonaws.com"
      ]
    }
  }
}
```

**importante**  
Por el momento, no se admiten restricciones de contexto de cifrado adicionales. Si se incluyen estas restricciones, se producirá un error en la migración.

## Establecer una clave de cifrado y especificar AWS KMS los permisos
<a name="CHAP_Security.EncryptionKey"></a>

AWS DMS cifra el almacenamiento utilizado por una instancia de replicación y la información de conexión del punto final. Para cifrar el almacenamiento utilizado por una instancia de replicación, AWS DMS utiliza una clave AWS Key Management Service (AWS KMS) que es exclusiva de su AWS cuenta. Puede ver y administrar esta clave con AWS KMS. Puede utilizar la clave KMS predeterminada en su cuenta (`aws/dms`) o crear una clave KMS personalizada. Si ya posee una clave KMS, también la puede utilizar para el cifrado.

**nota**  
Cualquier AWS KMS clave personalizada o existente que utilice como clave de cifrado debe ser una clave simétrica. AWS DMS no admite el uso de claves de cifrado asimétricas. Para obtener más información sobre claves de cifrado simétricas y asimétricas, consulte [https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html) en la *Guía para desarrolladores de AWS Key Management Service *.

La clave KMS predeterminada (`aws/dms`) se crea la primera vez que lanza una instancia de replicación, si no ha seleccionado ninguna clave KMS personalizada en la sección **Opciones avanzadas** de la página **Crear instancia de replicación**. Si utiliza la clave KMS predeterminada, los únicos permisos que debe otorgar a la cuenta de usuario de IAM que utilice para la migración son `kms:ListAliases` y `kms:DescribeKey`. Para obtener más información sobre el uso de la clave KMS predeterminada, consulte [Se necesitan permisos de IAM para utilizarlos AWS DMS](security-iam.md#CHAP_Security.IAMPermissions). 

Para utilizar una clave KMS personalizada, asigne permisos a la clave KMS personalizada utilizando una de las siguientes opciones:
+ Añada la cuenta de usuario de IAM utilizada para la migración como administrador de claves o usuario clave para la clave AWS KMS personalizada. Esto le permitirá que se concedan los permisos de AWS KMS necesarios a la cuenta de usuario de IAM. Esta acción se suma a los permisos de IAM que otorga a la cuenta de usuario de IAM para utilizar AWS DMS. Para obtener más información sobre la concesión de permisos a un usuario de claves, consulte [Permite a los usuarios de claves utilizar la clave de KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-default-allow-users) en la *Guía para desarrolladores de AWS Key Management Service .*
+ Si no desea añadir la cuenta de usuario de IAM como administrador de claves o usuario de claves a su clave KMS personalizada, añada los siguientes permisos adicionales a los permisos de IAM que debe conceder a la cuenta de usuario de IAM para utilizar AWS DMS. 

  ```
  {
              "Effect": "Allow",
              "Action": [
                  "kms:ListAliases",
                  "kms:DescribeKey",
                  "kms:CreateGrant",
                  "kms:Encrypt",
                  "kms:ReEncrypt*"
              ],
              "Resource": "*"
          },
  ```

AWS DMS también funciona con los alias clave de KMS. Para obtener más información sobre cómo crear sus propias claves de AWS KMS y dar a los usuarios acceso a una clave de KMS, consulte la *[Guía para desarrolladores de AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)*. 

Si no especificas un identificador de clave KMS, AWS DMS utiliza tu clave de cifrado predeterminada. AWS KMS crea la clave de cifrado predeterminada AWS DMS para tu AWS cuenta. Su AWS cuenta tiene una clave de cifrado predeterminada diferente para cada AWS región. 

Para administrar las AWS KMS claves utilizadas para cifrar sus AWS DMS recursos, utilice la AWS Key Management Service. AWS KMS combina hardware y software seguros y de alta disponibilidad para proporcionar un sistema de administración de claves adaptado a la nube. Con AWS KMSél, puede crear claves de cifrado y definir las políticas que controlan cómo se pueden utilizar estas claves.

**Puede encontrarlo AWS KMS en Consola de administración de AWS**

1. Inicia sesión en la consola AWS Key Management Service (AWS KMS) Consola de administración de AWS y ábrela en [https://console.aws.amazon.com/kms](https://console.aws.amazon.com/kms).

1. Para cambiarla Región de AWS, usa el selector de regiones en la esquina superior derecha de la página.

1. Elija una de las siguientes opciones para trabajar con AWS KMS las teclas:
   + Para ver las claves de la cuenta que se AWS crean y administran por ti, en el panel de navegación, selecciona **las claves AWS administradas**.
   + Si desea ver las claves de la cuenta que usted crea y administra, elija en el panel de navegación, **Claves administradas por el cliente**.

AWS KMS es compatible AWS CloudTrail, por lo que puede auditar el uso de las claves para comprobar que las claves se utilizan de forma adecuada. AWS KMS Las claves se pueden usar en combinación con AWS DMS AWS servicios compatibles como Amazon RDS, Amazon S3, Amazon Redshift y Amazon EBS. 

También puede crear AWS KMS claves personalizadas específicamente para cifrar los datos de destino de los siguientes puntos de conexión: AWS DMS 
+ Amazon Redshift: para obtener más información, consulte [Creación y uso de AWS KMS claves para cifrar los datos de destino de Amazon Redshift](CHAP_Target.Redshift.md#CHAP_Target.Redshift.KMSKeys).
+ Amazon S3: para obtener más información, consulte [Creación de AWS KMS claves para cifrar los objetos de destino de Amazon S3](CHAP_Target.S3.md#CHAP_Target.S3.KMSKeys).

Una vez que haya creado AWS DMS los recursos con una clave de KMS, no podrá cambiar la clave de cifrado de esos recursos. Asegúrese de determinar los requisitos de la clave de cifrado antes de crear AWS DMS los recursos. 

## Seguridad de red para AWS Database Migration Service
<a name="CHAP_Security.Network"></a>

Los requisitos de seguridad de la red que cree al AWS Database Migration Service utilizarla dependerán de cómo la configure. Las reglas generales de seguridad de la red AWS DMS son las siguientes: 
+ La instancia de replicación debe tener acceso a los puntos de enlace de origen y de destino. El grupo de seguridad de la instancia de replicación debe tener una red ACLs o reglas que permitan salir de la instancia por el puerto de la base de datos a los puntos finales de la base de datos.
+ Los puntos finales de la base de datos deben incluir reglas de red ACLs y grupos de seguridad que permitan el acceso entrante desde la instancia de replicación. Puede hacerlo utilizando el grupo de seguridad de la instancia de replicación, la dirección IP privada, la dirección IP pública o la dirección pública de la gateway NAT, en función de su configuración. 
+ Si la red utiliza un túnel de VPN, la instancia de Amazon EC2, que actúa como la puerta de enlace NAT, debe utilizar un grupo de seguridad que disponga de reglas que permitan a la instancia de replicación enviar tráfico a través de dicho túnel.

De forma predeterminada, el grupo de seguridad de VPC que utiliza la instancia de AWS DMS replicación tiene reglas que permiten la salida a 0.0.0.0/0 en todos los puertos. Si modifica este grupo de seguridad o utiliza su propio grupo de seguridad, la salida debe estar permitida al menos a los puntos de enlace de origen y de destino en los puertos de la base de datos respectivos.

Las configuraciones de red que puede utilizar para la migración de bases de datos requieren consideraciones de seguridad específicas:
+  [Configuración con todos los componentes de migración de bases de datos en una VPC](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioAllVPC): el grupo de seguridad utilizado por los puntos de conexión debe permitir el ingreso al puerto de la base de datos desde la instancia de replicación. Asegúrese de que el grupo de seguridad utilizado por la instancia de replicación entra a los puntos de enlace. Otra opción es crear una regla en el grupo de seguridad que utilizan los puntos de enlace que otorgue acceso a la dirección IP privada de la instancia de replicación. 
+  [Configuración con múltiples VPCs](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioVPCPeer): el grupo de seguridad utilizado por la instancia de replicación debe tener una regla para el rango de VPC y el puerto de la base de datos en la base de datos. 
+  [Configuración de una red a una VPC mediante una Direct Connect VPN](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioDirect): es un túnel de VPN que permite el tráfico a través del túnel desde la VPC a una VPN en las instalaciones. En esta configuración, la VPC incluye una regla de direccionamiento que envía el tráfico destinado a una dirección IP o a un rango específico a un host que puede conectar el tráfico de la VPC con la VPN local. En este caso, el host de NAT incluye su propia configuración del grupo de seguridad que debe permitir el tráfico desde la dirección IP privada o el grupo de seguridad de la instancia de replicación a la instancia NAT. 
+  [Configuración de una red a una VPC mediante Internet](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ScenarioInternet): el grupo de seguridad de la VPC debe incluir reglas de enrutamiento que envíen el tráfico no destinado a la VPC a la puerta de enlace de Internet. En esta configuración, la conexión con el punto de enlace parece provenir de la dirección IP pública de la instancia de replicación. 
+  [Configuración con una instancia de base de datos de RDS que no está en una VPC a una instancia de base de datos en una VPC mediante ClassicLink](CHAP_ReplicationInstance.VPC.md#CHAP_ReplicationInstance.VPC.Configurations.ClassicLink)— Cuando la instancia de base de datos Amazon RDS de origen o de destino no está en una VPC y no comparte un grupo de seguridad con la VPC en la que se encuentra la instancia de replicación, puede configurar un servidor proxy y ClassicLink utilizarlo para conectar las bases de datos de origen y destino. 
+  **El punto de conexión de origen está fuera de la VPC que utiliza la instancia de replicación y usa una puerta de enlace NAT**: puede configurar una puerta de enlace de traducción de las direcciones de red (NAT) mediante una única dirección IP elástica asociada a una única interfaz de red elástica. Esta interfaz de red elástica después recibe un identificador NAT (nat- \$1\$1\$1\$1\$1). Si la VPC incluye una ruta predeterminada a dicho NAT en lugar de la gateway de Internet, la instancia de replicación aparece para ponerse en contacto con el punto de enlace de la base de datos mediante la dirección IP pública de la gateway de Internet. En este caso, la entrada al punto de enlace de la base de datos fuera de la VPC debe permitir la entrada de la dirección NAT en lugar de la dirección IP pública de la instancia de replicación. 
+ **Puntos de conexión de VPC para motores que no sean de RDBMS**: AWS DMS no es compatible con puntos de conexión de VPC para motores que no sean de RDBMS.

# Uso de SSL con AWS Database Migration Service
<a name="CHAP_Security.SSL"></a>

Puede cifrar las conexiones para los puntos de enlace de origen y de destino utilizando la capa de conexión segura (SSL). Para ello, puede utilizar la consola de AWS DMS administración o la AWS DMS API para asignar un certificado a un punto final. También puede usar la AWS DMS consola para administrar sus certificados. 

No todas las bases de datos utilizan SSL de la misma forma. La edición compatible con MySQL de Amazon Aurora utiliza el nombre de servidor, el punto de conexión de la instancia principal del clúster, como el punto de conexión de SSL. Un punto de enlace de Amazon Redshift ya utiliza una conexión SSL y no requiere una conexión SSL configurada por AWS DMS. Un punto de enlace de Oracle requiere pasos adicionales. Para obtener más información, consulte [Compatibilidad con SSL para un punto de enlace de Oracle](CHAP_Source.Oracle.md#CHAP_Security.SSL.Oracle).

**Topics**
+ [Limitaciones del uso de SSL con AWS DMS](#CHAP_Security.SSL.Limitations)
+ [Administración de certificados](#CHAP_Security.SSL.ManagingCerts)
+ [Habilitación de SSL para un punto de enlace PostgreSQL, SQL Server o compatible con MySQL](#CHAP_Security.SSL.Procedure)

Para establecer una conexión segura, proporcione el certificado raíz o la cadena de certificados CA intermedios que llevan hacia la raíz (como un paquete de certificados) y que se utilizó para firmar el certificado SSL del servidor en el punto de conexión. Los certificados se aceptan solo como archivos X509 en formato PEM. Al importar un certificado, recibe un nombre de recurso de Amazon (ARN) que puede utilizar para especificar dicho certificado para un punto de enlace. Si utiliza Amazon RDS, puede descargar la entidad de certificación raíz y el paquete de certificados facilitados en el archivo `rds-combined-ca-bundle.pem` alojado por Amazon RDS. Para obtener más información sobre la descarga de este archivo, consulte [Uso SSL/TLS para cifrar una conexión a una instancia](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html) de base de datos en la Guía del *usuario de Amazon RDS*.

Puede elegir entre varios modos de SSL para verificar su certificado SSL. 
+ **ninguna**: la conexión no está cifrada. Esta opción no es segura, pero es menos costosa.
+ **requerir**: la conexión se cifra mediante SSL (TLS) pero no se ha hecho ninguna verificación de entidad de certificación. Esta opción es más segura y más costosa. 
+ **verify-ca**: la conexión está cifrada. Esta opción es más segura y más costosa. Esta opción verifica el certificado de servidor. 
+ **verify-full**: la conexión está cifrada. Esta opción es más segura y más costosa. Esta opción verifica el certificado de servidor y que el nombre de host del servidor coincida con el atributo del nombre de host para el certificado. 

No todos los modos SSL funcionan con todos los puntos de enlace de la base de datos. En la siguiente tabla se indica qué modos de SSL son compatibles con qué motor de base de datos.


|  Motor de base de datos  |  **ninguno**  |  **require**  |  **verify-ca**  |  **verify-full**  | 
| --- | --- | --- | --- | --- | 
|  MySQL/MariaDB/AmazonAurora MySQL  | Predeterminado | No compatible | Soportado |  compatible | 
|  Microsoft SQL Server  | Predeterminado |  compatible | No es compatible |  compatible | 
|  PostgreSQL  | Predeterminado | Soportado | Soportado |  compatible | 
|  Amazon Redshift  | Predeterminado | SSL no activado | SSL no activado | SSL no activado | 
|  Oracle  | Predeterminado | No compatible |  compatible | No es compatible | 
|  SAP ASE  | Predeterminado | SSL no activado | SSL no activado |  compatible | 
|  MongoDB  | Predeterminado |  compatible | No es compatible |  compatible | 
|  Db2 LUW  | Predeterminado | No es compatible |  compatible | No es compatible | 
|  Db2 para z/OS  | Predeterminado | No es compatible |  compatible | No es compatible | 

**nota**  
La opción de modo SSL en la consola o la API de DMS no se aplica a algunos servicios de flujo de datos y NoSQL, como Kinesis y DynamoDB. Son seguros de forma predeterminada, por lo que DMS muestra que la configuración del modo SSL es igual a cero (**Modo SSL=Ninguno**). No necesita proporcionar ninguna configuración adicional para que el punto de conexión utilice SSL. Por ejemplo, cuando se utiliza Kinesis como punto de conexión de destino, es seguro de forma predeterminada. Todas las llamadas de la API a Kinesis utilizan SSL, por lo que no es necesaria una opción SSL adicional en el punto de conexión de DMS. Puede colocar y recuperar datos de forma segura a través de puntos de conexión SSL mediante el protocolo HTTPS, que DMS utiliza de forma predeterminada al conectarse a un flujo de datos de Kinesis.

## Limitaciones del uso de SSL con AWS DMS
<a name="CHAP_Security.SSL.Limitations"></a>

A continuación se indican las limitaciones del uso de SSL con AWS DMS:
+ No se admiten las conexiones SSL a los puntos de enlace de destino de Amazon Redshift. AWS DMS utiliza un bucket de Amazon S3 para transferir datos a la base de datos de Amazon Redshift. Amazon Redshift cifra esta transmisión de forma predeterminada. 
+ Al realizar tareas de captura de datos de cambios (CDC) con puntos de enlace de Oracle compatibles con SSL se pueden producir tiempos de espera en SQL. Si tiene un problema en que los contadores CDC no reflejan los números previstos, defina el parámetro `MinimumTransactionSize` desde la sección `ChangeProcessingTuning` de la configuración de tareas con un valor inferior. Puede comenzar con un valor tan bajo como 100. Para obtener más información sobre el parámetro `MinimumTransactionSize`, consulte [Configuración de ajuste del procesamiento de cambios](CHAP_Tasks.CustomizingTasks.TaskSettings.ChangeProcessingTuning.md).
+ Solo puede importar certificados en los formatos .pem y .sso (wallet de Oracle).
+ En algunos casos, el certificado SSL del servidor puede estar firmado por una entidad emisora de certificados (CA) intermedia. Si es así, asegúrese de que toda la cadena de certificados que va desde la CA intermedia hasta la CA raíz se importa como un solo archivo .pem.
+ Si utiliza certificados autofirmados en su servidor, elija **require** como el modo SSL. El modo SSL **require** confía de forma implícita en el certificado SSL del servidor y no intenta comprobar que el certificado lo ha firmado un CA. 
+ AWS DMS no es compatible con la versión 1.3 de TLS para MySQL y puntos MariaDb finales.

## Administración de certificados
<a name="CHAP_Security.SSL.ManagingCerts"></a>

Puede utilizar la consola de DMS para ver y gestionar sus certificados SSL. También puede importar sus certificados utilizando la consola de DMS.

![\[AWS Database Migration Service Administración de certificados SSL\]](http://docs.aws.amazon.com/es_es/dms/latest/userguide/images/datarep-certificatemgr.png)


## Habilitación de SSL para un punto de enlace PostgreSQL, SQL Server o compatible con MySQL
<a name="CHAP_Security.SSL.Procedure"></a>

Puede añadir una conexión SSL a un punto de enlace recién creado o a un punto de enlace existente.

**Para crear un AWS DMS punto final con SSL**

1. Inicie sesión en la AWS DMS consola Consola de administración de AWS y ábrala en la versión [https://console.aws.amazon.com/dms/2/](https://console.aws.amazon.com/dms/v2/). 

   Si has iniciado sesión como usuario AWS Identity and Access Management (IAM), asegúrate de tener los permisos de acceso adecuados. AWS DMS Para obtener más información sobre los permisos necesarios para migrar bases de datos, consulte [Se necesitan permisos de IAM para utilizarlos AWS DMS](security-iam.md#CHAP_Security.IAMPermissions).

1. En el panel de navegación, elija **Certificates**.

1. Elija **Import Certificate**.

1. Cargue el certificado que desea usar para cifrar la conexión a un punto de enlace.
**nota**  
También puede cargar un certificado mediante la AWS DMS consola al crear o modificar un punto final; para ello, seleccione **Añadir un nuevo certificado de CA** en la página **Crear punto final de base de datos**.  
Para Aurora Serverless como destino, obtenga el certificado que se menciona en [Uso TLS/SSL con Aurora Serverless](https://docs.aws.amazon.com//AmazonRDS/latest/AuroraUserGuide/aurora-serverless.html#aurora-serverless.tls).

1. Cree un punto de enlace tal y como se describe en [Paso 2: Especificar los puntos de conexión de origen y destino](CHAP_GettingStarted.Replication.md#CHAP_GettingStarted.Replication.Endpoints)

**Para modificar un AWS DMS punto final existente para que utilice SSL**

1. Inicie sesión en la AWS DMS consola Consola de administración de AWS y ábrala en la versión [https://console.aws.amazon.com/dms/v2/](https://console.aws.amazon.com/dms/v2/). 

   Si ha iniciado sesión como usuario de IAM, asegúrese de que dispone de los permisos adecuados para acceder a AWS DMS. Para obtener más información sobre los permisos necesarios para migrar bases de datos, consulte [Se necesitan permisos de IAM para utilizarlos AWS DMS](security-iam.md#CHAP_Security.IAMPermissions).

1. En el panel de navegación, elija **Certificates**.

1. Elija **Import Certificate**.

1. Cargue el certificado que desea usar para cifrar la conexión a un punto de enlace.
**nota**  
También puede cargar un certificado mediante la AWS DMS consola al crear o modificar un punto final; para ello, seleccione **Añadir un nuevo certificado de CA** en la página **Crear punto final de base de datos**.

1. En el panel de navegación, elija **Endpoints**, seleccione el punto de enlace que desea modificar y elija **Modify**.

1. Elija un valor para el **modo SSL**.

   Si elige el modo **verify-ca** o **verify-full** especifique el certificado que desea utilizar para el **certificado de entidad de certificación**, como se muestra a continuación.   
![\[AWS Database Migration Service Administración de certificados SSL\]](http://docs.aws.amazon.com/es_es/dms/latest/userguide/images/datarep-certificate2.png)

   

1. Elija **Modificar**.

1. Una vez modificado el punto de enlace, selecciónelo y elija **Test connection (Probar conexión)** para determinar si la conexión SSL funciona.

Después de crear los puntos de enlace de origen y de destino, cree una tarea que utilice estos puntos de enlace. Para obtener más información acerca de cómo crear una tarea, consulte [Paso 3: Crear una tarea y migrar los datos](CHAP_GettingStarted.Replication.md#CHAP_GettingStarted.Replication.Tasks). 

## Cambio de la contraseña de la base de datos
<a name="CHAP_Security.ChangingDBPassword"></a>

En la mayoría de casos, cambiar la contraseña de la base de datos del punto de enlace de origen o de destino es un paso sencillo. Si necesita cambiar la contraseña de la base de datos de un punto de conexión que utiliza actualmente en una tarea de replicación o de migración, el proceso requiere algunos pasos adicionales. El procedimiento siguiente muestra cómo hacerlo.

**Para cambiar la contraseña de la base de datos de un punto de enlace en una tarea de replicación o de migración**

1. Inicie sesión en la AWS DMS consola Consola de administración de AWS y ábrala en la versión [https://console.aws.amazon.com/dms/2/](https://console.aws.amazon.com/dms/v2/). 

   Si ha iniciado sesión como usuario de IAM, asegúrese de que dispone de los permisos adecuados para acceder a AWS DMS. Para obtener más información sobre los permisos que se necesitan, consulte [Se necesitan permisos de IAM para utilizarlos AWS DMS](security-iam.md#CHAP_Security.IAMPermissions).

1. En el panel de navegación, elija **Tareas de migración de base de datos**.

1. Elija la tarea que utiliza el punto de enlace cuya contraseña de la base de datos desea cambiar y, a continuación, elija **Stop**.

1. Mientras la tarea está parada, puede cambiar la contraseña de la base de datos del punto de enlace utilizando las herramientas nativas que utiliza para trabajar con la base de datos.

1. Vuelva a la consola de administración de DMS y elija **Endpoints** en el panel de navegación.

1. Elija el punto de enlace de la base de datos del que ha cambiado la contraseña y, luego, elija **Modify**.

1. Escriba la nueva contraseña en la casilla **Contraseña** y, a continuación, elija **Guardar**.

1. En el panel de navegación, elija **Tareas de migración de base de datos**.

1. Elija la tarea que ha detenido anteriormente y elija **Reiniciar/Reanudar**.

1. Elija **Reiniciar** o **Reanudar**, en función de cómo desee continuar la tarea y, a continuación, elija **Iniciar tarea**.

# Uso de la autenticación Kerberos con AWS Database Migration Service
<a name="CHAP_Security.Kerberos"></a>

A partir de la versión 3.5.3 de DMS, puede configurar su punto de conexión de origen de Oracle o SQL Server para que se conecte a su instancia de base de datos mediante la autenticación Kerberos. El DMS admite Directory Service la autenticación de Microsoft Active Directory y Kerberos. Para obtener más información sobre el acceso AWS administrado a los servicios de Microsoft Active Directory, consulte [¿Qué es? Directory Service](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/what_is.html) .

## AWS DMS Descripción general de la arquitectura de autenticación Kerberos
<a name="CHAP_Security.Kerberos.architecture"></a>

El siguiente diagrama proporciona una descripción general de alto nivel del flujo de trabajo de autenticación AWS DMS Kerberos. 

![\[Arquitectura de la autenticación Kerberos\]](http://docs.aws.amazon.com/es_es/dms/latest/userguide/images/datarep-kerberos-architecture.jpg)


## Limitaciones del uso de la autenticación Kerberos con AWS DMS
<a name="CHAP_Security.Kerberos.limitations"></a>

Se aplican las siguientes limitaciones al utilizar la autenticación Kerberos con: AWS DMS
+ Las instancias de replicación de DMS admiten un archivo `krb5.conf` de Kerberos y un archivo keycache.
+ Debe actualizar el archivo keycache de Kerberos en Secrets Manager al menos 30 minutos antes de que caduque el ticket.
+ Un punto de conexión de DMS habilitado para Kerberos solo funciona con una instancia de replicación de DMS habilitada para Kerberos.

## Requisitos previos
<a name="CHAP_Security.Kerberos.prerequisites"></a>

Para comenzar, debe cumplir los siguientes requisitos previos desde un host autenticado de Active Directory o Kerberos existente: 
+ Establezca una relación de confianza de Active Directory con su AD en las instalaciones. Para obtener más información, consulte el [tutorial: Crear una relación de confianza entre su Microsoft AD AWS administrado y su dominio de Active Directory autoadministrado](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_tutorial_setup_trust.html).
+ Prepare una versión simplificada del archivo de configuración de `krb5.conf` Kerberos. Incluya información sobre el ámbito, la ubicación de los servidores de administración del dominio y las asignaciones de los nombres de host a un ámbito de Kerberos. Debe comprobar que el contenido de `krb5.conf` esté formateado con la combinación correcta de mayúsculas y minúsculas para los ámbitos y los nombres de los ámbitos de los dominios. Por ejemplo:

  ```
  [libdefaults] 
   dns_lookup_realm = true 
   dns_lookup_kdc = true 
   forwardable = true 
   default_realm = MYDOMAIN.ORG 
  [realms] 
  MYDOMAIN.ORG = { 
  kdc = mydomain.org 
  admin_server = mydomain.org 
  } 
  [domain_realm] 
  .mydomain.org = MYDOMAIN.ORG 
  mydomain.org = MYDOMAIN.ORG
  ```
+ Prepare un archivo keycache de Kerberos. El archivo contiene una credencial de Kerberos temporal con la información de la entidad principal del cliente. El archivo no almacena la contraseña del cliente. La tarea de DMS utiliza esta información de los tickets en caché para obtener credenciales adicionales sin contraseña. Ejecute los siguientes pasos en un host autenticado por Active Directory o Kerberos existente para generar un archivo keycache. 
  + Cree un archivo keytab de Kerberos. Puede generar un archivo keytab con la utilidad **kutil** o **ktpass**. 

    Para obtener más información acerca de la utilidad **ktpass** de Microsoft, consulte [ktpass](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/ktpass) en la *documentación de Windows Server*. 

    Para obtener más información acerca de la utilidad **kutil** de MIT, consulte [kutil](https://web.mit.edu/kerberos/krb5-1.12/doc/admin/admin_commands/ktutil.html) en la *documentación de MIT Kerberos*.
  + Cree un archivo keycache de Kerberos a partir del archivo keytab mediante la utilidad **kinit**. Para obtener más información acerca de la utilidad **kinit**, consulte [kinit](https://web.mit.edu/kerberos/krb5-1.12/doc/user/user_commands/kinit.html) en la *documentación de MIT Kerberos*.
+ Guarde el archivo keycache de Kerberos en Secrets Manager con el parámetro `SecretBinary`. Al cargar el archivo keycache en Secrets Manager, DMS lo recupera y, a continuación, actualiza el archivo de caché local aproximadamente cada 30 minutos. Cuando el archivo keycache local supera la marca de tiempo de caducidad predefinida, DMS detiene la tarea sin problemas. Para evitar errores de autenticación durante una tarea de replicación en curso, actualice el archivo keycache en Secrets Manager al menos 30 minutos antes de que caduque el ticket. Para obtener más información, consulte [createsecret](https://docs.aws.amazon.com/secretsmanager/latest/apireference/API_CreateSecret.html) en la *Referencia de la API de Systems Manager*. En el siguiente AWS CLI ejemplo, se muestra cómo almacenar el archivo keycache en formato binario en Secrets Manager:

  ```
  aws secretsmanager create-secret —name keycache —secret-binary fileb://keycachefile
  ```
+ Otorgue los permisos `GetSecretValue` y `DescribeSecret` al rol de IAM para obtener el archivo keycache de Secrets Manager. Asegúrese de que el rol de IAM incluya la política de confianza `dms-vpc-role`. Para obtener más información acerca de la política de confianza `dms-vpc-role`, consulte [Crear los roles de IAM para usarlos con AWS DMS](security-iam.md#CHAP_Security.APIRole).

En el siguiente ejemplo, se muestra cómo crear una política de rol de IAM con los permisos `GetSecretValue` y `DescribeSecret` de Secrets Manager. El *<keycache\$1secretsmanager\$1arn>* valor es el ARN de Keycache Secrets Manager que creó en el paso anterior.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "secretsmanager:GetSecretValue",
        "secretsmanager:DescribeSecret"
      ],
      "Resource": "*"
    }
  ]
}
```

------

## Habilitar la compatibilidad con Kerberos en una instancia de replicación de DMS AWS
<a name="CHAP_Security.Kerberos.enable.instance"></a>

Los ámbitos de Kerberos son idénticos a los dominios de Windows. Para resolver un ámbito principal, Kerberos se basa en un servicio de nombres de dominio (DNS). Al establecer el parámetro `dns-name-servers`, la instancia de replicación utiliza el conjunto personalizado predefinido de servidores DNS para resolver los ámbitos de los dominios de Kerberos. Otra opción alternativa para resolver las consultas de ámbito de Kerberos es configurar Amazon Route 53 en la nube privada virtual (VPC) de la instancia de replicación. Para obtener más información, consulte [Route 53](https://docs.aws.amazon.com/route53/). 

### Habilitar la compatibilidad con Kerberos en una instancia de replicación de DMS mediante Consola de administración de AWS
<a name="CHAP_Security.Kerberos.enable.instance.console"></a>

Para habilitar la compatibilidad con Kerberos mediante la consola, introduzca la siguiente información en la sección **Autenticación Kerberos** de la página **Crear instancia de replicación** o **Modificar instancia de replicación**:
+ El contenido de su archivo `krb5.conf`
+ El ARN del secreto de Secrets Manager que incluye el archivo keycache
+ El ARN del rol de IAM que tiene acceso al ARN de Secrets Manager y permisos para obtener el archivo keycache

### Habilitar la compatibilidad con Kerberos en una instancia de replicación de DMS mediante AWS CLI
<a name="CHAP_Security.Kerberos.enable.instance.cli"></a>

El siguiente AWS CLI ejemplo de llamada crea una instancia de replicación de DMS privada compatible con Kerberos. La instancia de replicación usa un DNS personalizado para resolver el ámbito de Kerberos. Para obtener más información, consulte [create-replication-instance](https://docs.aws.amazon.com/cli/latest/reference/dms/create-replication-instance.html).

```
aws dms create-replication-instance 
--replication-instance-identifier my-replication-instance 
--replication-instance-class dms.t2.micro 
--allocated-storage 50 
--vpc-security-group-ids sg-12345678 
--engine-version 3.5.4 
--no-auto-minor-version-upgrade 
--kerberos-authentication-settings'{"KeyCacheSecretId":<secret-id>,"KeyCacheSecretIamArn":<secret-iam-role-arn>,"Krb5FileContents":<krb5.conf file contents>}'
--dns-name-servers <custom dns server>
--no-publicly-accessible
```

## Activación de la compatibilidad con Kerberos en un punto de conexión de origen
<a name="CHAP_Security.Kerberos.enable.endpoint"></a>

Antes de activar la autenticación Kerberos en un punto de conexión de origen de un servidor DMS, Oracle o SQL, asegúrese de que puede autenticarse en la base de datos de origen mediante el protocolo Kerberos desde un equipo cliente. Puede utilizar la AMI de AWS DMS diagnóstico para lanzar una instancia de Amazon EC2 en la misma VPC que la instancia de replicación y, a continuación, probar la autenticación de Kerberos. Para obtener más información sobre la AMI, consulte [Trabajar con el soporte de AWS DMS diagnóstico (AMI)](CHAP_SupportAmi.md).

### Uso de la consola DMS AWS
<a name="CHAP_Security.Kerberos.enable.endpoint.console"></a>

En **Acceso a la base de datos de puntos de conexión**, elija **Autenticación Kerberos**. 

### Uso de AWS CLI
<a name="CHAP_Security.Kerberos.enable.endpoint.cli"></a>

Especifique el parámetro de configuración del punto de conexión y defina la opción `AuthenticationMethod` como kerberos. Por ejemplo:

**Oracle**

```
aws dms create-endpoint 
--endpoint-identifier my-endpoint 
--endpoint-type source 
--engine-name oracle 
--username dmsuser@MYDOMAIN.ORG 
--server-name mydatabaseserver 
--port 1521 
--database-name mydatabase  
--oracle-settings "{\"AuthenticationMethod\": \"kerberos\"}"
```

**SQL Server**

```
aws dms create-endpoint 
--endpoint-identifier my-endpoint 
--endpoint-type source 
--engine-name sqlserver 
--username dmsuser@MYDOMAIN.ORG 
--server-name mydatabaseserver 
--port 1433
--database-name mydatabase  
--microsoft-sql-server-settings "{\"AuthenticationMethod\": \"kerberos\"}"
```

## Prueba de un punto de conexión de origen
<a name="CHAP_Security.Kerberos.test"></a>

Debe probar el punto de conexión habilitado para Kerberos con una instancia de replicación habilitada para Kerberos. Si no configura correctamente la instancia de replicación o el punto de conexión de origen para la autenticación Kerberos, la acción `test-connection` del punto de conexión fallará y es posible que arroje errores relacionados con Kerberos. Para obtener más información, consulte [test-connection](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dms/test-connection.html).