Comment puis-je activer le protocole SSL sur mon instance de base de données compatible Aurora PostgreSQL et comment puis-je me connecter à mon instance à l'aide de certificats SSL ?

Lecture de 3 minute(s)
0

Je souhaite utiliser une connexion SSL (Secure Socket Layer) pour me connecter à mon cluster de base de données Amazon Aurora PostgreSQL Edition compatible.

Brève description

Vous pouvez chiffrer une connexion à votre cluster de base de données compatible Aurora PostgreSQL à partir de votre application à l'aide du protocole SSL ou du protocole TLS (Transport Layer Security). Les connexions SSL et TLS fournissent une couche de sécurité unique à votre cluster et chiffrent les données qui circulent entre votre client et le cluster. Pour plus d'informations, consultez la section Utilisation de SSL/TLS pour chiffrer une connexion à un cluster de bases de données.

Les connexions SSL doivent être configurées à la fois sur le client et sur le serveur avant d'établir la connexion afin d'être sécurisées. Si le protocole SSL n'est pas configuré sur le serveur, le client peut envoyer des informations sensibles telles que des mots de passe. Pour plus d'informations sur la création d'une connexion sécurisée par SSL, consultez la section Support SSL sur le site Web de PostgreSQL.

Les modes SSL pour PostgreSQL sont les suivants :

  • verify-full
  • verify-ca
  • require
  • prefer
  • allow
  • disable

Pour plus d'informations sur comment choisir le mode SSL adapté à votre cas d'utilisation, consultez la section Protection fournie dans différents modes sur le site Web de PostgreSQL.

Résolution

Amazon Relational Database Service (Amazon RDS) crée la certification SSL ou TLS pour votre cluster. Cela se produit lorsque vous créez votre cluster. Pour plus d'informations, consultez la section Sécurité avec Aurora PostgreSQL.

Connectez-vous à votre cluster de base de données via SSL/TLS

  1. Téléchargez le certificat SSL/TSL.
  2. Importez le certificat dans votre système d'exploitation.
  3. Connectez-vous à votre cluster de base de données compatible Aurora PostgreSQL via SSL/TLS.
    Par exemple :
    psql -h DBInstance.cluster-Account-Number.eu-west-1.rds.amazonaws.com  -p 5432 "dbname=postgres user=postgres sslrootcert=global-bundle.pem sslmode=verify-full"

Lorsque vous définissez rds.force_ssl sur 1 (activé), le fichier pg_hba.conf de votre instance de base de données est modifié pour prendre en charge la nouvelle configuration SSL. Utilisez la vue pg_hba_file\ _rulespour voir le résumé du contenu du fichier pg_hba.conf. La valeur du type dans la vue pg_hba_file_rules est mise à jour en hostssl une fois rds.force_ssl est défini sur 1 (activé).

Vous pouvez exiger des connexions à votre cluster de base de données pour utiliser le protocole SSL/TLS. Pour ce faire, utilisez le paramètre rds.force_ssl. Le paramètre rds.force_ssl est défini sur 0 par défaut. La valeur 0 indique qu'il est désactivé. Pour activer ce paramètre, définissez rds.force_ssl sur 1. Cela rend le protocole SSL/TLS obligatoire pour les connexions à votre cluster de base de données.

Pour plus d'informations, consultez Sécurisation des données Aurora PostgreSQL avec SSL/TLS.

Vérifiez la connexion SSL

Pour vérifier la connexion SSL, exécutez cette commande :

postgres=> select ssl_is_used(); ssl_is_used
-------------
 t
(1 row)

postgres=> select ssl_cipher();
         ssl_cipher
-----------------------------
 ECDHE-RSA-AES128-GCM-SHA256
(1 row)

Remarque : Le SSL de l'instance Amazon RDS est un SSL unidirectionnel. Cela signifie que le client peut vérifier l'identité du serveur.

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an