Tous les produits
Search
Centre de documentation

ApsaraDB RDS:Configure a client CA certificate

Dernière mise à jour :Aug 08, 2026

Lorsque le chiffrement SSL est activé sur une instance ApsaraDB RDS for PostgreSQL, le client vérifie l'identité du serveur avant d'établir la connexion. Cette mesure empêche l'écoute clandestine et les attaques de type « man-in-the-middle », mais n'empêche pas un client non autorisé d'usurper l'identité d'un utilisateur légitime. Pour que l'instance RDS vérifie également l'identité du client, configurez un certificat d'autorité de certification (CA) client pour l'authentification mutuelle TLS (mTLS).

Prérequis

Avant de commencer, assurez-vous d'avoir :

Linux inclut OpenSSL par défaut. Sous Windows, téléchargez et installez OpenSSL depuis la page Win32/Win64 OpenSSL .

Notes d'utilisation

  • Après avoir activé un certificat CA client, fermez toutes les connexions existantes et établissez-en de nouvelles pour que le chiffrement SSL prenne effet.

  • Les opérations suivantes déclenchent un redémarrage de l'instance RDS, qui dure environ 3 minutes. Effectuez ces opérations pendant les heures creuses :

    • Activation d'un certificat CA client

    • Modification du contenu du certificat CA client configuré

    • Modification de la liste de révocation de certificats (CRL)

Étape 1 : Créer un certificat client

L'exemple suivant utilise CentOS. Sous Windows, utilisez les mêmes commandes et la même configuration openssl.

  1. Créez un certificat CA auto-signé et sa clé privée.

    openssl req -new -x509 -days 3650 -nodes -out client-ca.crt -keyout client-ca.key -subj "/CN=root-client-ca"
  2. Créez une demande de signature de certificat (CSR) et une clé privée pour le certificat client.

    openssl req -new -nodes -text -out client.csr -keyout client.key -subj "/CN=<logon-username>"

    Définissez la valeur CN sur le nom d'utilisateur du compte utilisé pour se connecter à l'instance RDS depuis le client.

  3. Signez la CSR avec l'autorité de certification auto-signée pour créer le certificat client.

    openssl x509 -req -in client.csr -text -days 365  -CA client-ca.crt -CAkey client-ca.key -CAcreateserial  -out client.crt

Après avoir exécuté les trois commandes, vérifiez la sortie avec ls :

client-ca.crt  client-ca.key  client-ca.srl  client.crt  client.csr  client.key

Le tableau suivant décrit chaque fichier et son rôle dans la négociation mTLS :

Fichier Contenu Effet
client-ca.crt Certificat CA auto-signé Téléchargé sur l'instance RDS pour vérifier que les certificats clients sont signés par une autorité de certification approuvée
client-ca.key Clé privée de l'autorité de certification auto-signée Signe le certificat client (CSR) ; conservez ce fichier en toute sécurité
client.crt Certificat client Envoyé à l'instance RDS lors de la connexion pour prouver l'identité du client ; la valeur CN doit correspondre au nom d'utilisateur de la base de données
client.key Clé privée du certificat client Prouve que le certificat client a été envoyé par son propriétaire légitime

Étape 2 : Configurer un certificat CA client

Après la configuration, l'état de l'instance passe de Running à Modifying SSL Settings puis revient à Running en environ 3 minutes.
  1. Accédez à la page Instances. Dans la barre de navigation supérieure, sélectionnez la région où réside l'instance RDS. Localisez l'instance et cliquez sur son ID.

  2. Dans le volet de navigation de gauche, cliquez sur Data Security. Sur la page qui s'affiche, cliquez sur l'onglet SSL.

  3. Cliquez sur Enable Client CA Certificate.

    启用客户端CA证书

  4. Dans la boîte de dialogue, copiez l'intégralité du contenu de client-ca.crt dans le champ Public Key, puis cliquez sur OK. Copiez tout le contenu, de -----BEGIN CERTIFICATE----- jusqu'à -----END CERTIFICATE----- inclus.

    填写证书授权机构公钥

Étape 3 : Se connecter à l'instance RDS

Connectez-vous à l'instance RDS via SSL. Pour obtenir des instructions, consultez la rubrique Se connecter à une instance ApsaraDB RDS for PostgreSQL via SSL.

Étape 4 : (Facultatif) Configurer un fichier CRL

Révoquez un certificat client pour refuser l'accès à un client spécifique. Après la révocation, téléchargez un fichier CRL afin que l'instance RDS applique cette révocation.

Après la configuration d'un fichier CRL, l'état de l'instance passe de Running à Modifying SSL Settings puis revient à Running en environ 3 minutes.
  1. Préparez les fichiers de configuration CRL. Sous Linux :

    touch /etc/pki/CA/index.txt
    echo 1000 > /etc/pki/CA/crlnumber

    Sous Windows :

    1. Créez un dossier CA dans <OpenSSL installation directory>\bin.

    2. Créez un fichier index.txt dans le dossier CA.

    3. Exécutez la commande suivante à l'aide de l'interface CLI PostgreSQL : `` echo 1000 > <OpenSSL installation directory>\bin\CA\crlnumber ``

    4. Modifiez le fichier openssl.cnf situé dans C:\Program Files\Common Files\SSL\. Trouvez la section [ CA_default ] et mettez à jour la valeur dir : `` dir = "<OpenSSL installation directory>\\bin\\CA" ``

  2. Révoquez le certificat client (client.crt).

    openssl ca -revoke client.crt -cert client-ca.crt -keyfile client-ca.key

    Cette commande requiert le certificat CA auto-signé (client-ca.crt) et sa clé privée (client-ca.key) créés à l'étape 1.

  3. Générez le fichier CRL.

    openssl ca -gencrl -out client.crl -cert ca.crt -keyfile ca.key
  4. Dans le volet de navigation de gauche, cliquez sur Data Security. Sur la page qui s'affiche, cliquez sur l'onglet SSL.

  5. Cliquez sur Enable Certificate Revocation File.

    启用证书吊销文件

  6. Dans la boîte de dialogue, copiez le contenu de client.crl dans le champ Revocation File.

    填写客户端证书吊销文件

Étape 5 : (Facultatif) Mettre à jour le certificat client

Cette opération déclenche un redémarrage de l'instance RDS. Effectuez-la pendant les heures creuses.

Sur l'onglet SSL, cliquez sur Clear Client CA Certificate, puis cliquez sur Enable Client CA Certificate.

clearclientca