Cómo funciona AWS Database Migration Service con IAM - AWS Database Migration Service

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.

Cómo funciona AWS Database Migration Service con IAM

Antes de utilizar IAM para administrar el acceso a AWS DMS, debe comprender qué características de IAM están disponibles para su uso con AWS DMS. Para obtener una perspectiva general sobre cómo funcionan AWS DMS y otros servicios de AWS con IAM, consulte Servicios de AWS que funcionan con IAM en la Guía del usuario de IAM.

Políticas de AWS DMS basadas en identidades

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 en la Guía del usuario de IAM.

Acciones

Los administradores pueden utilizar las políticas JSON de AWS 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 permitir o denegar el acceso en una política. Las acciones de la política generalmente tienen el mismo nombre que la operación de API de AWS asociada. Hay algunas excepciones, como acciones de solo permiso que no tienen una operación de API coincidente. También hay algunas operaciones que requieren varias acciones en una política. Estas acciones adicionales se denominan acciones dependientes.

Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.

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

Para especificar varias acciones en una sola sentencia, sepárelas con comas como se indica a continuación.

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

Puede utilizar caracteres comodín (*) 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 las acciones de AWS DMS, consulte Acciones definidas por AWS Database Migration Service en la Guía del usuario de IAM.

Recursos

Los administradores pueden utilizar las políticas JSON de AWS 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. Las instrucciones deben contener un elemento Resource o NotResource. Como práctica recomendada, especifique un recurso utilizando el Nombre de recurso de Amazon (ARN). Puede hacerlo para acciones que admitan un tipo de recurso específico, conocido como permisos de nivel de recurso.

Para las acciones que no admiten permisos de nivel de recurso, como las operaciones de descripción, utilice un carácter comodín (*) 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 que AWS DMS requiere dependen de la acción o las acciones que invoque. Necesita una política que permita estas acciones en el recurso asociado o los recursos especificados por los ARN de recursos.

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

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

Para obtener más información acerca del formato de los ARN, consulte Nombres de recursos de Amazon (ARN) y espacios de nombres de servicios de AWS.

Por ejemplo, para especificar la instancia de punto de enlace de 1A2B3C4D5E6F7G8H9I0J1K2L3M para la región use-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 (*):

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

Algunas acciones de AWS DMS, como las empleadas para la creación de recursos, no se pueden llevar a cabo en un recurso específico. En dichos casos, debe utilizar el carácter comodín (*).

"Resource": "*"

Algunas acciones de la API de AWS DMS se utilizan varios recursos. Por ejemplo, StartReplicationTask inicia y conecta una tarea de replicación a dos recursos de punto de conexión de 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 única instrucción, separe los ARN con comas.

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

Para obtener más información sobre cómo controlar el acceso a los recursos de AWS DMS mediante políticas, consulte Uso de nombres de recursos para controlar el acceso. Para ver una lista de tipos de recursos de AWS DMS y sus ARN, consulte Recursos definidos por AWS Database Migration Service 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.

Claves de condición

Los administradores pueden utilizar las políticas JSON de AWS 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 (o bloque de Condition) permite especificar condiciones en las que entra en vigor una instrucción. El elemento Condition es opcional. Puede crear expresiones condicionales que utilicen operadores de condición, tales como igual o menor que, para que la condición de la política coincida con los valores de la solicitud.

Si especifica varios elementos de Condition en una instrucción o varias claves en un único elemento de Condition, AWS las evalúa mediante una operación lógica AND. Si especifica varios valores para una única clave de condición, AWS evalúa la condición con una operación OR lógica. Se deben cumplir todas las condiciones antes de que se concedan los permisos de la instrucción.

También puede utilizar variables de marcador de posición al especificar condiciones. Por ejemplo, puede conceder un permiso de usuario de IAM para acceder a un recurso solo si está etiquetado con su nombre de usuario de IAM. Para más información, consulte Elementos de la política de IAM: variables y etiquetas en la Guía del usuario de IAM.

AWS admite claves de condición globales y claves de condición específicas del servicio. Para ver todas las claves de condición globales de AWS, consulte Claves de contexto de condición globales de AWS 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 globales de AWS, consulte Claves de contexto de condición globales de AWS 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.

Para ver una lista de claves de condición de AWS DMS, consulte Claves de condición de AWS Database Migration Service 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 y recursos definidos por AWS Database Migration Service.

Ejemplos

Para ver ejemplos de políticas basadas en identidad de AWS DMS, consulte AWS Database Migration Service ejemplos de políticas basadas en identidad de .

Políticas de AWS DMS basadas en recursos

Las políticas basadas en recursos son documentos de política JSON que especifican qué acciones puede realizar una entidad principal especificada en un recurso AWS DMS determinado y en qué condiciones. AWS DMS admite políticas de permisos basadas en recursos para claves de cifrado de AWS KMS que cree para cifrar los datos migrados a los puntos de enlace 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. Añadir a una política basada en recursos una entidad principal entre cuentas es solo una parte del establecimiento de una relación de confianza. Cuando el principal y el recurso se encuentran en cuentas de AWS diferentes, también debe conceder a la entidad principal permiso para obtener acceso 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 en la Guía del Usuario de IAM.

El servicio AWS DMS solo admite un tipo de política basada en recursos, denominada política de clave, que se asocia a una clave de cifrado de AWS KMS. 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 claves de AWS KMS para cifrar datos de destino de Amazon Redshift y Creación de claves de AWS KMS para cifrar objetos de destino de Amazon S3.

Ejemplos

Para ver ejemplos de políticas basadas en recursos de AWS DMS, consulte Ejemplos de política basada en recursos para AWS KMS.

Autorización basada en etiquetas de AWS DMS

Puede asociar etiquetas a los recursos de AWS DMS o transferirlas en una solicitud a AWS DMS. Para controlar el acceso basado en etiquetas, proporcione información de etiqueta en el elemento de condición de una política utilizando la clave de condición dms:ResourceTag/key-name, aws:RequestTag/key-name, o aws:TagKeys. 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.

Para obtener un ejemplo de política basada en identidad que limita el acceso a un recurso basado en etiquetas, consulte Acceso a recursos de AWS DMS basados en etiquetas.

Roles de IAM para AWS DMS

Un rol de IAM es una entidad de la cuenta de AWS que dispone de permisos específicos.

Uso de credenciales temporales con AWS DMS

Puede utilizar credenciales temporales para iniciar sesión con identidad federada, asumir un rol de IAM o asumir un rol de acceso entre cuentas. Las credenciales de seguridad temporales se obtienen mediante una llamada a operaciones de la API de AWS STS, como AssumeRole o GetFederationToken.

AWS DMS admite el uso de credenciales temporales.

Roles vinculados al servicio

Los roles vinculados a servicios permiten a los servicios de AWS obtener acceso a los recursos de otros servicios para completar una acción en su 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 acerca de cómo crear o administrar roles vinculados a servicios de AWS DMS, consulte Uso de roles vinculados a servicios.

Roles de servicio

Esta característica permite que un servicio asuma un rol de servicio 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 roles de servicio que debe crear para utilizar determinados puntos de enlace de origen o destino:

Elección de un rol de IAM en AWS DMS

Si utiliza la AWS CLI o la API de AWS DMS para migrar la base de datos, debe agregar ciertos roles de IAM a la cuenta de AWS para 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, debe también agregar el rol de IAM de dms-access-for-endpoint a la cuenta de AWS. Para obtener más información, consulte Creación de los roles de IAM para usar con la AWS CLI y la API de AWS DMS.

Administración de identidades y accesos para DMS Fleet Advisor

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 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 es una entidad de la cuenta de AWS que dispone de permisos específicos. Para obtener más información, consulte Crear recursos de IAM.