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.
Control de acceso detallado mediante nombres de recursos y etiquetas
Puede utilizar nombres de recursos y etiquetas de recursos basados en nombres de recursos de Amazon (ARN) para gestionar el acceso a recursos de AWS DMS. 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
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 replicación AWS DMS con el ARN arn:aws:dms:us-east-1:152683116:rep:DOH67ZTOXGLIXMIHKITV:
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "dms:*" ], "Effect": "Deny", "Resource": "arn:aws:dms:us-east-1:152683116: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 el acceso a los puntos de enlace de AWS DMS y las tareas de replicación.
La siguiente política limita el acceso a puntos de enlace de AWS DMS utilizando el ARN del punto de enlace.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "dms:*" ], "Effect": "Deny", "Resource": "arn:aws:dms:us-east-1:152683116: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 tarea de AWS DMS utilizando el ARN de la tarea.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "dms:*" ], "Effect": "Deny", "Resource": "arn:aws:dms:us-east-1:152683116: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
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 necesidad de requisitos de etiquetado adicionales. Para obtener más información acerca del etiquetado de recursos de AWS DMS, consulte Etiquetar recursos en elAWS Database Migration Service.
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 según criterios temporales.
-
aws:EpochTime — Esta etiqueta es similar a laCurrentTime 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 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 principal (usuario, cuenta, usuario federado, etc.) de 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 pares simples de clave y valor que persisten en el servicio deAWS etiquetado. 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 recursos de AWS DMS, también se pueden escribir políticas para limitar las claves de etiquetas y los valores 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 recurso de AWS DMS en función de las etiquetas de recursos.
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":
{ "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 punto de enlace de AWS DMS donde el valor de la etiqueta es "Desktop" y la clave de la etiqueta es "Env".
{ "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".
{ "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