Configurez la couche de sockets sécurisés dans Oracle Cloud Infrastructure Database avec PostgreSQL

Introduction

Oracle Cloud Infrastructure Database avec PostgreSQL (OCI Database with PostgreSQL) prend uniquement en charge le cryptage SSL (Secure Socket Layer) pour les instances de base de données. Grâce à SSL, vous pouvez crypter la connexion entre vos applications et les instances de base de données PostgreSQL.

Le cryptage SSL est essentiel pour sécuriser les connexions client à OCI Database with PostgreSQL, garantissant ainsi la protection des données lors de la transmission. En configurant le type de connexion hostssl et en utilisant le paramètre sslmode, vous pouvez contrôler le niveau de vérification SSL pour une sécurité supplémentaire. Par défaut, TLSv1.2 est activé pour les connexions client et serveur, conformément aux pratiques standard du secteur. Pour un environnement PostgreSQL entièrement sécurisé et conforme, l'utilisation de ces paramètres SSL est essentielle.

Pour les connexions client sécurisées, OCI Database with PostgreSQL autorise uniquement le type de connexion hostssl dans le fichier pg_hba.conf. L'entrée hostssl garantit que les connexions TCP/IP sont cryptées à l'aide de SSL, ce qui oblige les clients à utiliser SSL pour l'authentification. Vous pouvez également indiquer le niveau de vérification SSL via le paramètre sslmode, qui inclut des options telles que require, verify-ca et verify-full.

Actuellement, les paramètres ssl_max_protocol_version et ssl_min_protocol_version sont configurés dans OCI Database with PostgreSQL pour utiliser TLSv1.2 à la fois pour les connexions client et serveur. Cependant, il est important de noter qu'OCI Database with PostgreSQL ne peut pas appliquer des versions TLS spécifiques, car ces paramètres sont des variables système en lecture seule.

Pour plus d'informations sur la prise en charge de SSL dans les bases de données PostgreSQL, reportez-vous à Connexions TCP/IP sécurisées avec SSL.

Remarque : la prise en charge de SSL est disponible dans toutes les régions OCI pour PostgreSQL.

Objectifs

Modes SSL

Le tableau suivant illustre les risques traités par différentes valeurs sslmode, ainsi que les implications en matière de sécurité et la surcharge associée pour chacune d'elles.

sslmode Protection d'écoute Protection MITM Instruction
disable No No Je ne me soucie pas de la sécurité, et je ne veux pas payer la surcharge du chiffrement.
permettre Peut-être No Je ne me soucie pas de la sécurité, mais je vais payer la surcharge du chiffrement si le serveur insiste dessus.
Préférer Peut-être No Je ne me soucie pas du chiffrement, mais je souhaite payer la surcharge du chiffrement si le serveur le prend en charge.
obligatoire Oui No Je veux que mes données soient cryptées et j'accepte la surcharge. J'espère que le réseau m'assurera de toujours me connecter au serveur que je veux.
verify-ca Oui Dépend de la stratégie CA Je veux que mes données soient cryptées et j'accepte la surcharge. Je veux être sûr de me connecter à un serveur en qui j'ai confiance.
vérification complète Oui Oui Je veux que mes données soient cryptées et j'accepte la surcharge. Je veux être sûr que je me connecte à un serveur de confiance, et que c'est celui que je spécifie.

Pour plus d'informations sur les différents éléments sslmodes, reportez-vous au Table 31-1 SSL MODE DESCRIPTIONS.

Dans OCI Database with PostgreSQL, sslmode doit être défini sur require ou supérieur (verify-ca ou verify-full), car les connexions non SSL ne sont pas prises en charge en raison des exigences réglementaires et de conformité. La connectivité SSL est obligatoire pour garantir que toutes les connexions en transit sont cryptées, conformément aux normes de conformité d'OCI.

Les certificats utilisés dans OCI Database with PostgreSQL sont émis par une autorité de certification privée gérée via le service OCI Certificates, qui adhère à des configurations approuvées OCI standardisées. Cette approche diffère des certificats autosignés traditionnels, qui utilisent souvent des paramètres non standard générés avec des outils tels que OpenSSL.

Etablir une connexion à OCI Database with PostgreSQL à l'aide de différents modes SSL

Les tentatives de connexion à OCI Database with PostgreSQL sans SSL sont rejetées avec le message suivant.

no pg_hba.conf entry for host "yy.yy.yy.yy", user "xxxxx", database "zzzzzz", no encryption

Chaque fois que le message d'erreur ci-dessus apparaît, il est recommandé de vérifier la valeur du mode SSL et de définir le paramètre sslmode sur require ou une valeur supérieure pour résoudre le problème.

Déterminer les versions de TLS dans OCI Database with PostgreSQL

L'image suivante affiche le statut de cryptage de votre connexion lorsque vous vous connectez à OCI Database with PostgreSQL.

image

Vous pouvez exécuter la requête suivante pour extraire des informations à partir de pg_settings.

image

Vous pouvez collecter des informations détaillées sur votre base de données OCI Database with PostgreSQL par processus, client et application à l'aide de la requête suivante.

image

Vous pouvez utiliser la vue système pg_stat_ssl pour afficher le statut SSL de toutes les connexions. Pour plus d'informations, reportez-vous au Tableau 27.8. pg_stat_ssl Vue.

image

Configuration du mode SSL dans différents outils de l'interface graphique

Voici quelques outils d'interface graphique open source qui peuvent être utilisés pour la connexion aux bases de données OCI PostgreSQL. Cette tâche explique comment configurer sslmode sur require ou une version supérieure dans ces outils pour éviter les problèmes de connectivité lors de la connexion aux bases de données OCI PostgreSQL.

Accusés de réception

Ressources de formation supplémentaires

Explorez d'autres ateliers sur le site docs.oracle.com/learn ou accédez à d'autres contenus d'apprentissage gratuits sur le canal Oracle Learning YouTube. En outre, visitez le site education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour obtenir de la documentation sur le produit, consultez Oracle Help Center.