SCRAM est à préférer parce qu'il s'agit d'un standard Internet et qu'il est bien plus sécurisé que le protocole d'authentification MD5 spécifique à PostgreSQL. chiffrement de colonnes spécifiques Le module pgcrypto autorise le stockage chiffré de certains champs. Ceci est utile si seulement certaines données sont sensibles. Le client fournit la clé, la donnée est déchiffrée sur le serveur puis envoyée au client. Postgresql chiffrement des données anglais. La donnée déchiffrée et la clé de déchiffrement sont présentes sur le serveur pendant un bref moment où la donnée est déchiffrée, puis envoyée entre le client et le serveur. Il y a donc un bref moment où la donnée et les clés peuvent être interceptées par quelqu'un ayant un accès complet au serveur de bases de données, tel que l'administrateur du système. chiffrement de la partition de données Le chiffrement du stockage peut se réaliser au niveau du système de fichiers ou au niveu du bloc. Les options de chiffrement des systèmes de fichiers sous Linux incluent eCryptfs et EncFS, alors que FreeBSD utilise PEFS.
Documentation PostgreSQL 14. 3 » Administration du serveur » Configuration du serveur et mise en place » Options de chiffrement PostgreSQL offre du chiffrement à différents niveaux et offre une certaine flexibilité pour éviter que les données soit révélées à cause d'un vol du serveur de la base de données, d'administrateurs peu scrupuleux et de réseaux non sécurisés. Le chiffrement pourrait aussi être requis pour sécuriser des données sensibles, par exemple des informations médicales ou des transactions financières. Chiffrement des données pour la sécurité des données PostgreSQL. Chiffrement du mot de passe Les mots de passe des utilisateurs de la base de données sont stockées suivant des hachages (déterminés par la configuration du paramètre password_encryption), donc l'administrateur ne peut pas déterminer le mot de passe actuellement affecté à l'utilisateur. Si le chiffrage MD5 ou SCRAM est utilisé pour l'authentification du client, le mot de passe non chiffré n'est jamais, y compris temporairement, présent sur le serveur parce que le client le chiffre avant de l'envoyer sur le réseau.
Les données sont cryptées sur le client avant d'être envoyé au serveur, et les résultats de la base de données doivent être décryptés sur le client avant d'être utilisés.