Configuration des SSL/TLS certificats pour les connexions Aurora DSQL - Amazon Aurora DSQL

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.

Configuration des SSL/TLS certificats pour les connexions Aurora DSQL

Aurora DSQL exige que toutes les connexions utilisent le chiffrement par protocole TLS (Transport Layer Security). Pour établir des connexions sécurisées, votre système client doit faire confiance à Amazon Root CA 1 (Root Certificate Authority). Ce certificat est préinstallé sur de nombreux systèmes d’exploitation. Cette section fournit des instructions pour vérifier le certificat Amazon Root CA 1 préinstallé sur différents systèmes d’exploitation et vous guide tout au long du processus d’installation manuelle du certificat s’il n’est pas déjà présent.

Nous vous recommandons d’utiliser la version 17 de PostgreSQL.

Important

Pour les environnements de production, nous recommandons d’utiliser le mode SSL verify-full pour garantir le plus haut niveau de sécurité de connexion. Ce mode vérifie que le certificat du serveur est signé par une autorité de certification fiable et que le nom d’hôte du serveur correspond au certificat.

Vérification des certificats préinstallés

Dans la plupart des systèmes d’exploitation, Amazon Root CA 1 est déjà préinstallé. Pour le valider, suivez les étapes indiquées ci-dessous.

Linux (RedHat/CentOS/Fedora)

Exécutez la commande suivante dans votre terminal :

trust list | grep "Amazon Root CA 1"

Si le certificat est installé, vous obtenez la sortie suivante :

label: Amazon Root CA 1

macOS

  1. Ouvrez Spotlight Search (Command + Espace)

  2. Recherchez Keychain Access

  3. Sélectionnez System Roots sous System Keychains

  4. Recherchez Amazon Root CA 1 dans la liste des certificats

Windows

Note

En raison d’un problème connu avec le client Windows PSQL, l’utilisation de certificats racine du système (sslrootcert=system) peut renvoyer l’erreur suivante : SSL error: unregistered scheme. Vous pouvez suivre la méthode Connexion depuis Windows comme méthode alternative pour vous connecter à votre cluster à l’aide du protocole SSL.

Si Amazon Root CA 1 n’est pas installé sur votre système d’exploitation, suivez les étapes ci-dessous.

Installation de certificats

Si le certificat Amazon Root CA 1 n’est pas préinstallé sur votre système d’exploitation, vous devrez l’installer manuellement afin d’établir des connexions sécurisées avec votre cluster Aurora DSQL.

Installation du certificat Linux

Suivez ces étapes pour installer le certificat Amazon Root CA sur les systèmes Linux.

  1. Téléchargez le certificat racine :

    wget https://www.amazontrust.com/repository/AmazonRootCA1.pem
  2. Ajoutez le certificat au Trust Store :

    sudo cp ./AmazonRootCA1.pem /etc/pki/ca-trust/source/anchors/
  3. Mettez à jour le CA Trust Store :

    sudo update-ca-trust
  4. Vérifier l’installation :

    trust list | grep "Amazon Root CA 1"

Installation du certificat macOS

Ces étapes d’installation du certificat sont facultatives. L’Installation du certificat Linux fonctionne également pour un macOS.

  1. Téléchargez le certificat racine :

    wget https://www.amazontrust.com/repository/AmazonRootCA1.pem
  2. Ajoutez le certificat au trousseau du système :

    sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain AmazonRootCA1.pem
  3. Vérifier l’installation :

    security find-certificate -a -c "Amazon Root CA 1" -p /Library/Keychains/System.keychain

Connexion avec SSL/TLS vérification

Avant de configurer SSL/TLS des certificats pour des connexions sécurisées à votre cluster Aurora DSQL, assurez-vous de remplir les conditions préalables suivantes.

  • PostgreSQL version 17 installée

  • AWS CLI configuré avec les informations d'identification appropriées

  • Informations sur les points de terminaison du cluster Aurora DSQL

Connexion depuis Linux

  1. Générez et définissez le jeton d’authentification :

    export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --hostname your-cluster-endpoint)
  2. Connectez-vous à l’aide de certificats système (s’ils sont préinstallés) :

    PGSSLROOTCERT=system \ PGSSLMODE=verify-full \ psql --dbname postgres \ --username admin \ --host your-cluster-endpoint
  3. Ou connectez-vous à l’aide d’un certificat téléchargé :

    PGSSLROOTCERT=/full/path/to/root.pem \ PGSSLMODE=verify-full \ psql --dbname postgres \ --username admin \ --host your-cluster-endpoint
Note

Pour en savoir plus sur les paramètres PGSSLMODE, consultez sslmode dans la documentation Fonctions de contrôle de connexion à la base de données PostgreSQL 17.

Connexion depuis macOS

  1. Générez et définissez le jeton d’authentification :

    export PGPASSWORD=$(aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --hostname your-cluster-endpoint)
  2. Connectez-vous à l’aide de certificats système (s’ils sont préinstallés) :

    PGSSLROOTCERT=system \ PGSSLMODE=verify-full \ psql --dbname postgres \ --username admin \ --host your-cluster-endpoint
  3. Vous pouvez également télécharger le certificat racine et l’enregistrer sous root.pem (si le certificat n’est pas préinstallé)

    PGSSLROOTCERT=/full/path/to/root.pem \ PGSSLMODE=verify-full \ psql —dbname postgres \ --username admin \ --host your_cluster_endpoint
  4. Connexion à l’aide de psql :

    PGSSLROOTCERT=/full/path/to/root.pem \ PGSSLMODE=verify-full \ psql —dbname postgres \ --username admin \ --host your_cluster_endpoint

Connexion depuis Windows

Utilisation d’une invite de commande

  1. Générez le jeton d’authentification :

    aws dsql generate-db-connect-admin-auth-token ^ --region=your-cluster-region ^ --expires-in=3600 ^ --hostname=your-cluster-endpoint
  2. Définissez la variable d’environnement mot de passe :

    set "PGPASSWORD=token-from-above"
  3. Définissez la configuration SSL :

    set PGSSLROOTCERT=C:\full\path\to\root.pem set PGSSLMODE=verify-full
  4. Établissez une connexion à la base de données :

    "C:\Program Files\PostgreSQL\17\bin\psql.exe" --dbname postgres ^ --username admin ^ --host your-cluster-endpoint

En utilisant PowerShell

  1. Générez et définissez le jeton d’authentification :

    $env:PGPASSWORD = (aws dsql generate-db-connect-admin-auth-token --region=your-cluster-region --expires-in=3600 --hostname=your-cluster-endpoint)
  2. Définissez la configuration SSL :

    $env:PGSSLROOTCERT='C:\full\path\to\root.pem' $env:PGSSLMODE='verify-full'
  3. Établissez une connexion à la base de données :

    "C:\Program Files\PostgreSQL\17\bin\psql.exe" --dbname postgres ` --username admin ` --host your-cluster-endpoint

Ressources supplémentaires