View a markdown version of this page

Conditions préalables complètes pour travailler avec DMS Schema Conversion - AWS Service de migration de bases de données

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Conditions préalables complètes pour travailler avec DMS Schema Conversion

Avant de créer un profil d'instance, d'ajouter des fournisseurs de données et de créer un projet de migration, effectuez les tâches préalables suivantes. Ces tâches configurent les AWS ressources dont la conversion de schéma DMS a besoin, telles qu'un VPC, un compartiment Amazon S3, des AWS Secrets Manager secrets et des rôles IAM avec des politiques d'autorisations.

La console automatise la création de ressources

Lorsque vous créez un projet de migration à l'aide de la console de AWS gestion, vous AWS DMS pouvez créer automatiquement les rôles IAM et le compartiment Amazon S3 requis en votre nom. Si vous préférez créer ces ressources manuellement, ou si vous utilisez l'API AWS CLI ou, procédez comme suit. Pour plus d'informations sur la création de projets de migration, consultez Création de projets de migration.

Configurer VPC, Amazon S3 et Secrets Manager

Avant de créer des rôles et des politiques IAM, vous avez besoin des AWS ressources suivantes pour votre projet de migration.

Amazon Virtual Private Cloud

Vous avez besoin d'un VPC connecté à vos bases de données source et cible à partir de sous-réseaux situés dans au moins deux zones de disponibilité. Vous pouvez utiliser un VPC existant qui répond à ces exigences, ou en créer un nouveau, par exemple nommésc-vpc. Pour plus d'informations sur la configuration réseau, consultezConfiguration d’un réseau pour la conversion de schéma DMS.

Amazon S3

Vous avez besoin d'un compartiment Amazon S3 avec le contrôle de version activé pour stocker les rapports d'évaluation, le code SQL converti et les métadonnées du schéma de base de données. Créez un compartiment Amazon S3 dans la même région que votre projet de migration, par exemple nomméamzn-s3-demo-bucket, ou utilisez un compartiment existant qui répond à ces exigences. La conversion de schéma DMS prend en charge les compartiments Amazon S3 qui utilisent le Server-Side chiffrement avec des clés gérées par Amazon S3 (SSE-S3) ou le Server-Side chiffrement avec des clés AWS KMS (SSE-KMS). Cela inclut les clés gérées par le client. Si votre bucket utilise SSE-KMS une clé gérée par le client, assurez-vous que sc-s3-role cette clé dispose des autorisations nécessaires (voirCréation de rôles et de politiques IAM). La conversion de schéma DMS ne prend pas en charge SSE-C Client-Side le chiffrement. Pour obtenir des instructions sur la création d'un compartiment, consultez la section Création d'un compartiment dans le guide de l'utilisateur Amazon S3.

AWS Secrets Manager

Créez des secrets JSON AWS Secrets Manager contenant username des paires password clé-valeur pour vos bases de données source et cible, par exemple named sc-source-secret et. sc-target-secret Vos secrets doivent être identiques à ceux Région AWS de votre projet de migration. Si vous possédez déjà des secrets qui répondent à ces exigences, vous pouvez les réutiliser. Pour obtenir des instructions sur la création de secrets, voir Créer un AWS Secrets Manager secret dans le Guide de AWS Secrets Manager l'utilisateur.

Création de rôles et de politiques IAM

Pour utiliser la conversion de schéma DMS, créez les cinq rôles IAM suivants. Chaque rôle doit utiliser une politique de confiance qui permet au AWS DMS service d'assumer le rôle.

Nom du rôle Politique d’autorisations
sc-s3-role

Permet à DMS Schema Conversion de stocker les rapports d'évaluation, le code SQL converti et les métadonnées dans le compartiment Amazon S3 :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket", "s3:GetBucketLocation", "s3:GetBucketVersioning" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket", "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } }, { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:GetObjectVersion" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*", "Condition": { "StringEquals": { "aws:ResourceAccount": "111122223333" } } } ] }
SSE-KMS autorisations pour les clés gérées par le client

Si votre compartiment Amazon S3 utilise SSE-KMS une clé gérée par le client, le sc-s3-role rôle doit être autorisé à utiliser cette clé. Utilisez l’une des méthodes suivantes.

Ajoutez la déclaration suivante à la politique sc-s3-role d'identité. Cette approche fonctionne lorsque la politique de clé KMS délègue l'accès à IAM, ce que fait la politique de clé par défaut :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-ID", "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" } } } ] }

Ou ajoutez une instruction pour sc-s3-role à la politique de clé KMS. Utilisez cette approche lorsque la politique clé ne délègue pas l'accès à IAM. L'énoncé de politique clé prend un Principal et s'applique à la clé elle-même :

{ "Version":"2012-10-17", "Statement": [ { "Sid": "AllowScS3RoleToUseTheKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/sc-s3-role" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" } } } ] }

Si votre bucket l'utilise SSE-S3, vous n'avez pas besoin d'autorisations supplémentaires.

sc-source-secret-role

Permet à DMS Schema Conversion de récupérer les informations d'identification de votre base de données source :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:sc-source-secret*" } ] }
sc-target-secret-role

Permet à DMS Schema Conversion de récupérer les informations d'identification de votre base de données cible :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:sc-target-secret*" } ] }
dms-vpc-role

AmazonDMSVPCManagementRole(politique AWS gérée). Consultez Création des rôles IAM à utiliser avec AWS DMS.

dms-cloudwatch-logs-role

AmazonDMSCloudWatchLogsRole(politique AWS gérée). Consultez Création des rôles IAM à utiliser avec AWS DMS.

Chaque rôle nécessite la politique de confiance suivante :

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

Pour créer ces ressources, créez d'abord les politiques, puis créez les rôles et associez les politiques correspondantes. Pour obtenir des instructions, consultez les sections Création de politiques IAM et Création d'un rôle pour un AWS service dans le Guide de l'utilisateur IAM.