Configurer Secure Socket Layer dans Oracle Cloud Infrastructure Database avec PostgreSQL
Présentation
Oracle Cloud Infrastructure Database avec PostgreSQL (OCI Database with PostgreSQL) ne prend en charge que le chiffrement SSL (Secure Socket Layer) pour les instances de base de données. En utilisant SSL, vous pouvez chiffrer la connexion entre vos applications et les instances de base de données PostgreSQL.
Le chiffrement SSL est essentiel pour sécuriser les connexions des clients à la base de données OCI Database with PostgreSQL avec les instances PostgreSQL, afin de garantir 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é accrue. Par défaut, TLSv1.2
est activé pour les connexions client et serveur, conformément aux pratiques standard de l'industrie. Pour un environnement PostgreSQL entièrement sécurisé et conforme, il est essentiel d'exploiter ces paramètres SSL.
Pour les connexions clients 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 chiffrées à l'aide de SSL, ce qui oblige les clients à utiliser SSL pour l'authentification. Vous pouvez également spécifier le niveau de vérification SSL au moyen du 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. Toutefois, il est important de noter que 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, voir Connexions TCP/IP sécurisées avec SSL.
Note : La prise en charge de SSL est disponible dans toutes les régions OCI pour PostgreSQL.
Objectifs
- Connectez OCI Database with PostgreSQL à PostgreSQL à l'aide du chiffrement SSL pour sécuriser les instances de base de données. Il soulignera l'importance de configurer le type de connexion
hostssl
dans le fichierpg_hba.conf
pour garantir des connexions TCP/IP chiffrées, et montrera comment le paramètresslmode
contrôle les niveaux de vérification SSL. En outre, ce tutoriel clarifiera la configuration de la version TLS pour les connexions client et serveur.
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 les frais généraux associés pour chacune d'elles.
sslmode | Protection contre les écoutes | Protection MITM | Énoncé |
---|---|---|---|
désactiver | Non | Non | Je ne me soucie pas de la sécurité, et je ne veux pas payer les frais généraux du chiffrement. |
permettre | Peut-être | Non | Je ne me soucie pas de la sécurité, mais je paierai les frais généraux du cryptage si le serveur insiste dessus. |
préférer | Peut-être | Non | Je ne me soucie pas du chiffrement, mais je souhaite payer les frais généraux du chiffrement si le serveur le prend en charge. |
requis | Oui | Non | Je veux que mes données soient chiffrées et j'accepte les frais généraux. J'espère que le réseau s'assurera que je me connecte toujours au serveur que je veux. |
vérifier-ca | Oui | Dépend de la politique d'autorité de certification | Je veux que mes données soient chiffrées et j'accepte les frais généraux. Je veux être sûr de me connecter à un serveur auquel j'ai confiance. |
vérification complète | Oui | Oui | Je veux que mes données soient chiffrées et j'accepte les frais généraux. Je veux être sûr que je me connecte à un serveur auquel j'ai confiance, et que c'est celui que je spécifie. |
Pour plus d'informations sur les différents sslmodes
, voir Tableau 31-1 DESCRIPTIONS DES MODE SSL.
Dans OCI Database with PostgreSQL, sslmode
doit être réglé à require
ou à une valeur supérieure (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 chiffrées, conformément aux normes de conformité d'OCI.
Les certificats utilisés dans la base de données OCI Database with PostgreSQL sont émis par une autorité de certification privée gérée au moyen du service de certificats OCI, qui respecte les configurations approuvées OCI standardisées. Cette approche diffère des certificats auto-signés traditionnels, qui utilisent souvent des paramètres non standard générés avec des outils tels que OpenSSL.
Établir une connexion à la base de données OCI Database with PostgreSQL à l'aide de divers 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 régler le paramètre sslmode
à require
ou supérieur pour résoudre le problème.
-
Définissez le mode SSL
require
.Ce mode force la connexion à utiliser SSL, mais le certificat du serveur n'est pas vérifié.
psql "sslmode=require host=<endpoint_fqdn> dbname=<database_name> user=<user_name>"
-
Vérifier l'autorité de certification avec le mode SSL
verify-ca
.Ce mode force SSL et le certificat du serveur est vérifié par rapport à une autorité de certification approuvée. Il ne vérifie pas que le certificat du serveur correspond au nom d'hôte.
psql "sslmode=verify-ca sslrootcert=<parent_directory>/<dbsystem.pub> host=<endpoint_fqdn> dbname=<database_name> user=<user_name>"
sslrootcert
: Téléchargez le certificat de l'autorité de certification à partir de la section des détails de connexion de votre système de base de données et enregistrez-le à l'emplacement suivant :<parent_directory>/<dbsystem.pub>
et ce fichier contient les certificats de l'autorité de certification approuvés. Cela garantit que le certificat du serveur est signé par une autorité de certification valide.
-
Vérifier l'intégralité des données avec le mode SSL
verify-full
.Ce mode force SSL, vérifie le certificat du serveur par rapport à une autorité de certification approuvée et vérifie également que le certificat du serveur correspond à l'hôte auquel vous êtes connecté (le nom d'hôte dans votre chaîne de connexion).
psql "sslmode=verify-full sslrootcert=<parent_directory>/<dbsystem.pub> host=<endpoint_fqdn> dbname=<database_name> user=<user_name>"
sslrootcert
: Téléchargez le certificat de l'autorité de certification à partir de la section des détails de connexion de votre système de base de données et enregistrez-le à l'emplacement suivant :<parent_directory>/<dbsystem.pub>
et ce fichier contient les certificats de l'autorité de certification approuvés.
Correspondance du nom d'hôte : Il s'agit de l'option la plus sécurisée, car elle garantit que le certificat du serveur est signé par une autorité de certification privée gérée au moyen du service de certificats OCI et que le certificat correspond au nom d'hôte attendu.
Déterminer les versions TLS dans la base de données OCI Database with PostgreSQL
L'image suivante affiche le statut de chiffrement de votre connexion lorsque vous connectez à l'instance OCI Database with PostgreSQL.
Vous pouvez exécuter l'interrogation suivante pour extraire des informations à partir de pg_settings
.
Vous pouvez recueillir des informations détaillées sur l'utilisation SSL de votre instance OCI Database with PostgreSQL par processus, client et application à l'aide de l'interrogation suivante.
Vous pouvez utiliser la vue de système pg_stat_ssl
pour voir le statut SSL de toutes les connexions. Pour plus d'informations, voir Tableau 27.8. Vue pg_stat_ssl
.
Configurer le mode SSL dans différents outils de l'interface graphique
Voici quelques outils d'interface graphique à code source libre qui peuvent être utilisés pour se connecter aux bases de données OCI PostgreSQL. Cette tâche montre comment configurer sslmode
à require
ou une valeur supérieure dans ces outils pour éviter les problèmes de connectivité lors de la connexion aux bases de données OCI PostgreSQL.
-
pgAdmin
-
Dans pgAdmin, naviguez jusqu'à Serveur, Enregistrer, Serveur et entrez les détails de connexion à la base de données nécessaires.
-
Cliquez sur Paramètres, allez à la section SSL, où vous pouvez configurer le paramètre de mode SSL.
-
Assurez-vous que
sslmode
est réglé àrequire
ou à un niveau supérieur (par exemple,verify-ca
ouverify-full
) à partir du menu déroulant disponible pour respecter les exigences de connexion sécurisée.
-
-
DBeaver
-
Dans DBeaver, naviguez jusqu'à Créer et cliquez sur Connexions.
-
Sélectionnez PostgreSQL dans la liste des types de base de données et cliquez sur Suivant pour continuer.
-
Dans Paramètres de connexion, sélectionnez la section SSL dans les paramètres de connexion pour configurer les paramètres SSL.
-
Réglez le mode SSL à
require
.
-
Remerciements
- Auteur - Kaviya Selvaraj (Membre principal du personnel technique)
Ressources d'apprentissage supplémentaires
Explorez d'autres laboratoires sur le site docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation sur le produit, visitez Oracle Help Center.
Configure Secure Socket Layer in OCI Database with PostgreSQL
G39562-01
Copyright ©2025, Oracle and/or its affiliates.