Tous les produits
Search
Centre de documentation

ApsaraDB RDS:Connect RDS for PostgreSQL to a self-managed domain

Dernière mise à jour :Aug 25, 2026

L'authentification Active Directory (AD) permet aux utilisateurs d'entreprise de se connecter à votre instance RDS PostgreSQL avec leurs identifiants AD, sans mot de passe de base de données distinct. Ce guide détaille la configuration d'un contrôleur de domaine AD sur une instance Elastic Compute Service (ECS), puis la connexion de votre instance RDS à ce domaine AD auto-géré via LDAP.

Fonctionnement

Lorsqu'un utilisateur se connecte à l'instance RDS, celle-ci transmet la demande d'authentification au contrôleur de domaine AD via le protocole LDAP (Lightweight Directory Access Protocol). Le contrôleur de domaine vérifie les identifiants de l'utilisateur et renvoie le résultat. Si l'authentification AD est activée pour la connexion, le contrôleur de domaine AD gère la vérification du mot de passe. Dans le cas contraire, ApsaraDB RDS utilise son propre mécanisme de vérification par mot de passe.

L'instance RDS et le contrôleur de domaine AD communiquent exclusivement sur le réseau privé. Les deux ressources doivent donc résider dans le même Virtual Private Cloud (VPC).

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

  • Une instance ApsaraDB RDS for PostgreSQL exécutant PostgreSQL 10 ou version ultérieure, avec une version mineure du moteur 20210228 ou ultérieure, et utilisant des disques cloud. Pour mettre à jour la version mineure du moteur, consultez Mettre à jour la version mineure du moteur d'une instance ApsaraDB RDS for PostgreSQL.

  • Une instance ECS située dans le même VPC que l'instance RDS, exécutant Windows Server 2016 ou version ultérieure.

  • Un groupe de sécurité ECS configuré pour autoriser le trafic entrant provenant de l'adresse IP privée de l'instance RDS. Consultez Ajouter une règle de groupe de sécurité. Si le pare-feu ECS est activé, configurez-le également pour autoriser ce trafic (le pare-feu est désactivé par défaut).

  • Un compte de domaine appartenant au groupe Domain Admins.

  • Un accès à la console ApsaraDB RDS.

Étape 1 : Configurer le contrôleur de domaine AD sur ECS

Le contrôleur de domaine AD doit fonctionner sous Windows Server. Ce guide prend Windows Server 2016 comme exemple.
  1. Connectez-vous à l'instance ECS et ouvrez Server Manager.

  2. Dans le volet de navigation de gauche, cliquez sur Dashboard, puis sur Add roles and features.

    添加角色和功能

  3. Dans l'assistant Add Roles and Features Wizard, configurez chaque onglet comme suit :

    L'instance ECS doit posséder une adresse IP statique. Une adresse IP dynamique rendrait le serveur DNS indisponible.
    Onglet Paramètre
    Before You Begin Conservez les paramètres par défaut.
    Installation Type Conservez les paramètres par défaut.
    Server Selection Conservez les paramètres par défaut.
    Server Roles Sélectionnez Active Directory Domain Services, puis cliquez sur Add Features dans la boîte de dialogue. Sélectionnez ensuite DNS Server, puis cliquez sur Add Features.
    Features Conservez les paramètres par défaut.
    AD DS Conservez les paramètres par défaut.
    DNS Server Conservez les paramètres par défaut.
    Install Cliquez sur Install.
  4. Une fois l'installation terminée, cliquez sur Close.

  5. Dans le volet de navigation de gauche, cliquez sur AD DS. Dans le coin supérieur droit, cliquez sur More.

    AD DS更多

  6. Dans le panneau All Servers Task Details and Notifications, cliquez sur Promote this server to a domain controller.

    将此服务器提升为域控制器

  7. Dans l'assistant Active Directory Domain Services Configuration Wizard, effectuez la configuration suivante :

    Onglet Paramètre
    Deployment Configuration Sélectionnez Add a new forest et définissez le Root domain name. Cet exemple utilise pgsqldomain.net (pgsqldomain est le préfixe, net est le suffixe). Utilisez le même nom de domaine racine tout au long de la configuration. 添加新林,设置域名
    Domain Controller Options Définissez un Directory Services Restore Mode (DSRM) password. 设置还原密码
    Server Selection Désélectionnez l'option Create DNS delegation. 创建 DNS 委派
    Additional Options, Paths, Review Options Conservez les paramètres par défaut.
    Prerequisites Check Cliquez sur Install.
  8. Après le redémarrage de l'instance ECS en tant que contrôleur de domaine AD, reconnectez-vous avant de passer à l'étape suivante.

Étape 2 : Ajouter des utilisateurs au contrôleur de domaine AD

Deux types d'utilisateurs AD sont nécessaires : un utilisateur administrateur (utilisé par LDAP pour se lier à l'annuaire) et un utilisateur standard (utilisé pour se connecter à l'instance RDS).

Ajouter un utilisateur administrateur

  1. Dans Server Manager, cliquez sur AD DS dans le volet de navigation de gauche. Faites un clic droit sur le contrôleur de domaine et sélectionnez Active Directory Users and Computers.

    添加ad用户

  2. Développez pgsqldomain.net, faites un clic droit sur Users, puis choisissez New > User.

    pgsqldomain.net correspond au nom de domaine racine défini à l'étape 1.

    添加用户

  3. Saisissez un nom d'utilisateur et cliquez sur Next.

    新建对象-用户

  4. Saisissez un mot de passe, sélectionnez Password never expires, puis cliquez sur Next et Finish.

    设置密码

  5. Double-cliquez sur le nouvel utilisateur et ajoutez-le au groupe Domain Admins.

    加入管理员组

    添加管理员组结果

Ajouter un utilisateur standard

Suivez les mêmes étapes que ci-dessus pour créer un utilisateur standard. Ne l'ajoutez pas au groupe Domain Admins.

Cet exemple utilise ldapuser comme utilisateur standard. Ce compte servira à la connexion à l'instance RDS.

Étape 3 : Configurer les règles de groupe de sécurité pour ECS

Le contrôleur de domaine AD nécessite l'ouverture de plusieurs ports. Utilisez un groupe de sécurité dédié pour le contrôleur de domaine plutôt que de le partager avec d'autres instances ECS.

  1. Connectez-vous à la console ECS et accédez à Instances & Images > Instances.

  2. Dans la barre de navigation supérieure, sélectionnez la région de l'instance ECS.

  3. Cliquez sur l'ID de l'instance ECS, puis sur Security Groups dans le volet de navigation de gauche.

  4. Cliquez sur Add Rules dans la colonne Actions.

  5. Sous l'onglet Inbound, cliquez sur Add Rule pour autoriser l'instance RDS à joindre l'instance ECS sur les ports suivants :

    Protocole Port Service
    TCP 88 Authentification Kerberos
    TCP 135 RPC
    TCP/UDP 389 LDAP
    TCP 445 CIFS
    TCP 3268 Global Catalog
    TCP/UDP 53 DNS
    TCP 49152–65535 Plage de ports dynamiques par défaut (saisir 49152/65535)

Étape 4 : Configurer l'instance RDS

Créer un compte de base de données correspondant

  1. Dans la console ApsaraDB RDS, localisez l'instance RDS et cliquez sur son ID.

  2. Créez un compte nommé ldapuser. Consultez Créer un compte.

    Le nom du compte RDS doit correspondre exactement au nom de l'utilisateur standard AD ( ldapuser dans cet exemple). Les mots de passe peuvent différer. Lorsque l'authentification AD est active, le contrôleur de domaine AD vérifie le mot de passe. Lorsqu'elle est inactive, ApsaraDB RDS utilise le mot de passe du compte défini dans la console.

    dbadminrds账号

Configurer le service de domaine AD

  1. Dans le volet de navigation de gauche, cliquez sur Accounts, puis ouvrez l'onglet AD Domain Services. Lors de la première ouverture de cet onglet, le système crée deux enregistrements par défaut :

    host    all            all    0.0.0.0/0    md5
    host    replication    all    0.0.0.0/0    md5

    Vous pouvez supprimer ou modifier ces enregistrements.

  2. Cliquez sur Edit pour le premier enregistrement et configurez les paramètres suivants. Pour le champ OPTION, respectez le format ci-après :

    Paramètre Valeur d'exemple Description
    Priority 0 Priorité de l'enregistrement. La valeur 0 correspond à la priorité la plus élevée et est attribuée automatiquement au premier enregistrement.
    TYPE host Type de connexion. La valeur host correspond aux connexions TCP/IP avec et sans SSL. La valeur hostssl correspond uniquement aux connexions SSL (nécessite l'activation du chiffrement SSL). La valeur hostnossl correspond uniquement aux connexions non-SSL.
    DATABASE all Bases de données accessibles aux utilisateurs spécifiés. Utilisez all pour autoriser l'accès à toutes les bases de données. Séparez les noms de plusieurs bases de données par des virgules.
    USER ldapuser Utilisateurs standard AD autorisés à se connecter. Séparez les noms de plusieurs utilisateurs par des virgules. Les comptes Domain Admins ne peuvent pas être utilisés ici.
    ADDRESS 0.0.0.0/0 Adresses IP source autorisées. La valeur 0.0.0.0/0 autorise les connexions depuis n'importe quelle adresse IP.
    MASK (laisser vide) Masque de sous-réseau pour l'adresse IP indiquée dans ADDRESS. Laissez ce champ vide lors de l'utilisation de la notation CIDR.
    METHOD ldap Méthode d'authentification. Doit être en minuscules. Valeurs valides : trust, reject, scram-sha-256, md5, password, gss, sspi, ldap, radius, cert, pam.
    OPTION Voir ci-dessous Options LDAP requises lorsque METHOD est défini sur ldap.
    ldapserver=<Private IP address of the ECS instance> ldapbasedn="CN=Users,DC=<domain prefix>,DC=<domain suffix>" ldapbinddn="CN=<AD administrator username>,CN=Users,DC=<domain prefix>,DC=<domain suffix>" ldapbindpasswd="<AD administrator password>" ldapsearchattribute="sAMAccountName"

    Pour le domaine d'exemple pgsqldomain.net avec l'utilisateur administrateur adminuser :

    ldapserver=<ECS private IP> ldapbasedn="CN=Users,DC=pgsqldomain,DC=net" ldapbinddn="CN=adminuser,CN=Users,DC=pgsqldomain,DC=net" ldapbindpasswd="<adminuser password>" ldapsearchattribute="sAMAccountName"

    Pour la liste complète des paramètres OPTION, consultez la documentation sur les méthodes d'authentification PostgreSQL.

  3. Cliquez sur add à droite de l'enregistrement du service de domaine AD pour ajouter un enregistrement de secours avec les valeurs suivantes :

    host    all    all    0.0.0.0/0    md5
  4. Cliquez sur OK, puis sur Submit.

    Après avoir cliqué sur Submit , l'instance RDS passe à l'état Maintaining Instance pendant environ une minute. Les nouvelles configurations ne prennent effet que pour les nouvelles connexions. Fermez les connexions existantes et reconnectez-vous pour appliquer les modifications.

Étape 5 : Tester la connexion

Connectez-vous à l'instance RDS à l'aide de l'outil en ligne de commande psql. Utilisez les identifiants de l'utilisateur standard AD, et non le mot de passe du compte RDS.

psql -h <RDS instance endpoint> -U ldapuser -p 5432 -d postgres

Lorsque vous êtes invité à saisir un mot de passe, entrez le mot de passe AD pour ldapuser (et non le mot de passe du compte RDS).

Installez le client PostgreSQL avant d'utiliser psql . Pour d'autres méthodes de connexion, consultez Se connecter à une instance ApsaraDB RDS for PostgreSQL .

Importer des enregistrements de service de domaine AD en masse (facultatif)

Pour configurer plusieurs enregistrements de service de domaine AD simultanément, utilisez la fonctionnalité d'importation en masse.

导入AD域服务信息

Modes d'importation :

  • Overwrite existing service information : remplace tous les enregistrements actuels.

  • Additional service information (highest priority) : insère les nouveaux enregistrements au début, leur attribuant une priorité supérieure à celle des enregistrements existants.

  • Additional service information (lowest priority) : ajoute les nouveaux enregistrements à la fin, leur attribuant une priorité inférieure à celle des enregistrements existants.

Format requis :

TYPE|DATABASE|USER1|ADDRESS|MASK|METHOD|OPTION

Exemple d'enregistrement :

host|all|ldapuser|0.0.0.0/0||ldap|ldapserver=<ECS private IP> ldapbasedn="CN=Users,DC=pgsqldomain,DC=net" ldapbinddn="CN=<AD administrator username>,CN=Users,DC=pgsqldomain,DC=net" ldapbindpasswd="<AD administrator password>" ldapsearchattribute="sAMAccountName"

Saisissez les enregistrements dans la zone de texte Edit AD domain, puis sélectionnez un mode d'importation et envoyez.

Consulter l'historique des modifications du service de domaine AD

  1. Dans la console RDS, cliquez sur l'ID de l'instance, puis accédez à Accounts > AD Domain Services Edit History.

  2. Cliquez sur changedetails dans la colonne Actions pour afficher les détails de la modification. Si une modification a échoué, l'état affiche Not Taking Effect. Cliquez sur Change log pour consulter le message d'erreur.

    查看AD域修改记录

Étapes suivantes