Partage via


Configurer TLS dans Azure Cosmos DB for PostgreSQL

S’APPLIQUE À : Azure Cosmos DB for PostgreSQL (avec l’extension de base de données Citus pour PostgreSQL)

Le nœud coordinateur requiert que les applications clientes se connectent à l’aide du protocole TLS (Transport Layer Security). L’application du protocole TLS entre le serveur de base de données et les applications clientes permet de préserver la confidentialité des données en transit. Les paramètres de vérification supplémentaires décrits ci-dessous protègent également d’attaques de l’intercepteur.

Appliquer les connexions TLS

Les applications utilisent une « chaîne de connexion » pour identifier la base de données de destination et les paramètres d’une connexion. Des clients différents nécessitent des réglages différents. Pour afficher la liste des chaînes de connexion utilisées par les clients courants, consultez la section Chaînes de connexion de votre cluster dans le portail Azure.

Les paramètres TLS ssl et sslmode varient en fonction des capacités du connecteur, par exemple ssl=true, sslmode=require ou sslmode=required.

Vérification que votre application ou votre infrastructure prend en charge les connexions TLS

Certaines infrastructures d’application n’activent pas TLS par défaut pour les connexions PostgreSQL. Toutefois, sans connexion sécurisée, une application ne peut pas se connecter à un nœud coordinateur. Consultez la documentation de votre application pour savoir comment activer les connexions TLS.

Applications nécessitant la vérification du certificat pour la connectivité TLS

Dans certains cas, les applications nécessitent un fichier de certificat local généré à partir du fichier de certificat (.cer) d’une autorité de certification (AC) approuvée pour se connecter en toute sécurité. Vous trouverez le certificat permettant la connexion à Azure Cosmos DB for PostgreSQL ici : https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem. Télécharger le fichier du certificat et enregistrez-le à l’emplacement par défaut.

Notes

Pour vérifier l’authenticité du certificat, vous pouvez vérifier son empreinte digitale SHA-256 à l’aide de l’outil en ligne de commande OpenSSL :

openssl x509 -in DigiCertGlobalRootG2.crt.pem -noout -sha256 -fingerprint

# should output:
# CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F

Connexion via psql

L’exemple suivant montre comment se connecter au nœud coordinateur à l’aide de l’utilitaire de ligne de commande psql. Utilisez le paramètre de chaîne de connexion sslmode=verify-full pour appliquer la vérification du certificat TLS. Passez le chemin d’accès du fichier de certificat local au paramètre sslrootcert.

Voici un exemple de chaîne de connexion pqsl :

psql "sslmode=verify-full sslrootcert=DigiCertGlobalRootG2.crt.pem host=c-mydemocluster.12345678901234.postgres.cosmos.azure.com dbname=citus user=citus password=your_pass"

Conseil

Vérifiez que la valeur passée à sslrootcert correspond au chemin de fichier du certificat que vous avez enregistré.

Étapes suivantes

Renforcez la sécurité davantage avec les règles de pare-feu dans Azure Cosmos DB for PostgreSQL.