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.
À partir de DMS v3.5.3, vous pouvez configurer votre point de terminaison source Oracle ou SQL Server pour qu'il se connecte à votre instance de base de données à l'aide de l'authentification Kerberos. DMS prend en charge AWS Directory Service l'authentification Microsoft Active Directory et Kerberos. Pour plus d'informations sur l'accès AWS géré aux services Microsoft Active Directory, voir Qu'est-ce que c'est ? AWS Directory Service .
AWS DMS Présentation de l'architecture d'authentification Kerberos
Le schéma suivant fournit une vue d'ensemble du flux de travail d'authentification AWS DMS Kerberos.

Limitations relatives à l'utilisation de l'authentification Kerberos avec AWSAWS DMS
Les limites suivantes s'appliquent lors de l'utilisation de l'authentification Kerberos avec : AWS AWS DMS
Les instances de réplication DMS prennent en charge un fichier Kerberos et un
krb5.conf
fichier de cache de clés.Vous devez mettre à jour le fichier de cache de clés Kerberos dans Secrets Manager au moins 30 minutes avant l'expiration du ticket.
Un point de terminaison DMS compatible Kerberos fonctionne uniquement avec une instance de réplication DMS compatible Kerberos.
Prérequis
Pour commencer, vous devez remplir les conditions préalables suivantes à partir d'un hôte authentifié Active Directory ou Kerberos existant :
Établissez une relation de confiance Active Directory avec votre AD sur site. Pour plus d'informations, consultez Tutoriel : Création d'une relation de confiance entre votre Microsoft AD AWS géré et votre domaine Active Directory autogéré.
Préparez une version simplifiée du fichier de
krb5.conf
configuration Kerberos. Incluez des informations sur le domaine, l'emplacement des serveurs d'administration du domaine et les mappages des noms d'hôtes sur un domaine Kerberos. Vous devez vérifier que lekrb5.conf
contenu est formaté avec le bon boîtier mixte pour les domaines et les noms de domaine. Par exemple :[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
Préparez un fichier de cache de clés Kerberos. Le fichier contient un identifiant Kerberos temporaire contenant les informations principales du client. Le fichier ne stocke pas le mot de passe du client. Votre tâche DMS utilise ces informations de ticket de cache pour obtenir des informations d'identification supplémentaires sans mot de passe. Exécutez les étapes suivantes sur un hôte authentifié Active Directory ou Kerberos existant pour générer un fichier de cache de clés.
Créez un fichier keytab Kerberos. Vous pouvez générer un fichier keytab à l'aide de l'utilitaire kutil ou ktpass.
Pour plus d'informations sur l'utilitaire Microsoft ktpass, consultez ktpass
dans la documentation de Windows Server. Pour plus d'informations sur l'utilitaire MIT kutil, consultez kutil
dans la documentation Kerberos du MIT. Créez un fichier de cache de clés Kerberos à partir d'un fichier keytab à l'aide de l'utilitaire kinit. Pour plus d'informations sur l'utilitaire kinit, consultez kinit
dans la documentation Kerberos du MIT.
-
Stockez le fichier de cache de clés Kerberos dans Secrets Manager à l'aide du paramètre.
SecretBinary
Lorsque vous téléchargez le fichier de cache de clés dans Secrets Manager, DMS le récupère, puis met à jour le fichier de cache local toutes les 30 minutes environ. Lorsque le fichier de cache de clés local dépasse l'horodatage d'expiration prédéfini, DMS arrête la tâche en douceur. Pour éviter les échecs d'authentification lors d'une tâche de réplication en cours, mettez à jour le fichier de cache de clés dans Secrets Manager au moins 30 minutes avant l'expiration du ticket. Pour plus d'informations, consultez createsecret dans le Guide de référence de l'API Secrets Manager. L' AWS CLI exemple suivant montre comment stocker le fichier keycache au format binaire dans Secrets Manager :aws secretsmanager create-secret —name keycache —secret-binary fileb:
//keycachefile
Accordez à un rôle IAM les
DescribeSecret
autorisationsGetSecretValue
et pour obtenir le fichier de cache de clés auprès de Secrets Manager. Assurez-vous que le rôle IAM inclut la politique dedms-vpc-role
confiance. Pour plus d'informations sur la politique dedms-vpc-role
confiance, consultezCréation des rôles IAM à utiliser avec AWS DMS.
L'exemple suivant montre une politique de rôle IAM avec le Secrets Manager GetSecretValue
et DescribeSecret
les autorisations. La <keycache_secretsmanager_arn>
valeur est l'ARN du Keycache Secrets Manager que vous avez créé à l'étape précédente.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "secretsmanager:GetSecretValue", "secretsmanager:DescribeSecret" ], "Resource": [
<keycache_secretsmanager_arn>
] } ] }
Activation de la prise en charge de Kerberos sur une instance de réplication AWS DMS
Les domaines Kerberos sont identiques aux domaines de Windows. Pour résoudre un domaine principal, Kerberos s'appuie sur un service de noms de domaine (DNS). Lorsque vous définissez le dns-name-servers
paramètre, votre instance de réplication utilise votre ensemble personnalisé prédéfini de serveurs DNS pour résoudre les domaines de domaine Kerberos. Une autre option pour résoudre les requêtes de domaine Kerberos consiste à configurer Amazon Route 53 sur le cloud privé virtuel (VPC) de l'instance de réplication. Pour plus d'informations, consultez Route 53.
Activation de la prise en charge de Kerberos sur une instance de réplication DMS à l'aide du AWS Management Console
Pour activer le support Kerberos à l'aide de la console, entrez les informations suivantes dans la section Authentification Kerberos de la page Créer une instance de réplication ou Modifier une instance de réplication :
Le contenu de votre
krb5.conf
fichierL'ARN du secret de Secrets Manager qui contient le fichier keycache
L'ARN du rôle IAM qui a accès à l'ARN du gestionnaire de secrets et les autorisations nécessaires pour récupérer le fichier de cache de clés
Activation de la prise en charge de Kerberos sur une instance de réplication DMS à l'aide du AWS CLI
L' AWS CLI exemple d'appel suivant crée une instance de réplication DMS privée compatible avec Kerberos. L'instance de réplication utilise un DNS personnalisé pour résoudre le domaine Kerberos. Pour de plus amples informations, veuillez consulter create-replication-instance.
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
Activation de la prise en charge de Kerberos sur un point de terminaison source
Avant d'activer l'authentification Kerberos sur un point de terminaison source DMS Oracle ou SQL Server, assurez-vous de pouvoir vous authentifier auprès de la base de données source à l'aide du protocole Kerberos depuis un ordinateur client. Vous pouvez utiliser l'AMI AWS DMS de diagnostic pour lancer une EC2 instance Amazon sur le même VPC que l'instance de réplication, puis tester l'authentification Kerberos. Pour plus d'informations sur l'AMI, consultezUtilisation de l'AMI d'assistance au AWS DMS diagnostic.
Utilisation de la AWS console DMS
Sous Accès à la base de données des terminaux, sélectionnez Authentification Kerberos.
À l'aide du AWS CLI
Spécifiez le paramètre de réglage du point de terminaison et définissez AuthenticationMethod
l'option comme Kerberos. Par exemple :
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-namemydatabase
--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-namemydatabase
--microsoft-sql-server-settings "{\"AuthenticationMethod\": \"kerberos\"}"
Test d'un point de terminaison source
Vous devez tester le point de terminaison compatible Kerberos par rapport à une instance de réplication compatible Kerberos. Lorsque vous ne configurez pas correctement l'instance de réplication ou le point de terminaison source pour l'authentification Kerberos, l'test-connection
action du point de terminaison échoue et peut renvoyer des erreurs liées à Kerberos. Pour plus d'informations, consultez la section test-connection