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.
AWS Database Migration Service ejemplos de políticas basadas en la identidad
De forma predeterminada, los usuarios y roles de IAM no tienen permiso para crear, ver ni modificar recursos de AWS DMS . Tampoco pueden realizar tareas con AWS Management Console AWS CLI, o. AWS API IAMEl administrador debe crear IAM políticas que concedan a los usuarios y roles permisos para realizar API operaciones específicas en los recursos específicos que necesitan. El administrador debe adjuntar esas políticas a los usuarios o grupos de IAM que necesiten esos permisos.
Para obtener información sobre cómo crear una política IAM basada en la identidad con estos documentos de JSON política de ejemplo, consulte Creación de políticas en la JSON pestaña de la Guía del IAMusuario.
Temas
Prácticas recomendadas sobre las políticas
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 o las políticas administradas por AWS para funciones de trabajo 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 puedes 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 en la Guía de usuario de IAM.
-
Use 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ítica para especificar que todas las solicitudes deben enviarse medianteSSL. 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 AWS CloudFormation. Para obtener más información, consulte los elementos IAM JSON de la política: Condición en la Guía del IAM usuario.
-
Utilice IAM Access Analyzer para validar sus IAM políticas y garantizar permisos seguros y funcionales: IAM Access Analyzer valida las políticas nuevas y existentes para que se ajusten al lenguaje de las políticas (JSON) y IAM a las IAM mejores prácticas. IAM Access Analyzer proporciona más de 100 comprobaciones de políticas y recomendaciones prácticas para ayudarlo a crear políticas seguras y funcionales. Para obtener más información, consulte Validar políticas con IAM Access Analyzer en la Guía del IAM usuario.
-
Requerir autenticación multifactorial (MFA): si se encuentra en una situación en la que se requieren IAM usuarios o un usuario raíz Cuenta de AWS, actívela MFA para aumentar la seguridad. Para solicitarlo MFA cuando se convoque a API las operaciones, añada MFA condiciones a sus políticas. Para obtener más información, consulte APIAcceso seguro con MFA en la Guía del IAM usuario.
Para obtener más información sobre las prácticas recomendadas de IAM, consulte las Prácticas recomendadas de seguridad en IAM en la Guía de usuario de IAM.
Mediante la consola de AWS DMS
La siguiente política te da acceso a otros servicios de Amazon AWS DMS, incluida la AWS DMS consola, y también especifica los permisos para determinadas acciones necesarias desde otros servicios de Amazon, como AmazonEC2.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dms:*", "Resource": "arn:aws:dms:
region
:account
:resourcetype
/id
" }, { "Effect": "Allow", "Action": [ "kms:ListAliases", "kms:DescribeKey" ], "Resource": "arn:aws:service
:region
:account
:resourcetype
/id
" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "iam:CreateRole", "iam:AttachRolePolicy" ], "Resource": "arn:aws:service
:region
:account
:resourcetype
/id
" }, { "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
" }, { "Effect": "Allow", "Action": [ "cloudwatch:Get*", "cloudwatch:List*" ], "Resource": "arn:aws:service
:region
:account
:resourcetype
/id
" }, { "Effect": "Allow", "Action": [ "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:FilterLogEvents", "logs:GetLogEvents" ], "Resource": "arn:aws:service
:region
:account
:resourcetype
/id
" } ] }
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 obligatoria si conoce el nombre del recurso de Amazon (ARN) de la KMS clave 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 siguiente sección es obligatoria para determinados tipos de puntos finales que requieren la transferencia de un rol ARN al punto final. 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 IAM roles para usarlos con AWS DMS.
{ "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 EC2 instancia de Amazon 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 utilizas la AWS DMS consola, el AWS Command Line Interface (AWS CLI) o el AWS DMS API para la migración, tendrás que añadir varios roles a tu cuenta. Para obtener más información sobre la creación de estos roles, consulte Crear los IAM roles para usarlos con AWS DMS.
Para obtener más información sobre los requisitos para usar esta política para acceder AWS DMS, consulteIAMpermisos necesarios para su uso AWS DMS.
Cómo permitir a los usuarios consultar sus propios permisos
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 tecla o. AWS API
{ "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
AWS DMSutiliza buckets de Amazon S3 como almacenamiento intermedio para la migración de bases de datos. Normalmente, AWS DMS administra los buckets S3 predeterminados para este fin. Sin embargo, en algunos casos, especialmente cuando utiliza el AWS CLI o el AWS DMSAPI, AWS DMS le permite especificar su propio bucket 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 AmazonDMSRedshiftS3Role
política AWS administrada.
En el ejemplo siguiente se muestra una versión de la política AmazonDMSRedshiftS3Role
. Permite conceder AWS DMS a un IAM usuario 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 administrar el ciclo de vida del bucket. Además, se requiere la acción s3:GetObjectAcl
para poder copiar objetos.
{ "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.
Acceso a recursos de AWS DMS basados en etiquetas
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 crear una política que permita el acceso a todos los puntos de enlace de 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.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "dms:*", "Resource": "arn:aws:dms:*:*:endpoint/*", "Condition": { "StringEquals": {"dms:endpoint-tag/Owner": "${aws:username}"} } } ] }
También puede adjuntar 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
oowner=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 los elementos IAM JSON de la política: Condición en la Guía del IAM usuario.