PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 17.0 » Interfaces client » libpq -- Bibliothèque C » Fichier de mots de passe

32.16. Fichier de mots de passe #

Le fichier .pgpass, situé dans le répertoire personnel de l'utilisateur est un fichier contenant les mots de passe à utiliser si la connexion requiert un mot de passe (et si aucun mot de passe n'a été spécifié). Sur Microsoft Windows, le fichier est nommé %APPDATA%\postgresql\pgpass.conf (où %APPDATA% fait référence au sous-répertoire Application Data du profil de l'utilisateur). De manière alternative, le fichier de mots de passe peut être spécifié en utilisant le paramètre de connexion passfile ou la variable d'environnement PGPASSFILE.

Ce fichier devra être composé de lignes au format suivant (une ligne par connexion) :

nom_hote:port:database:nomutilisateur:motdepasse 

(Vous pouvez ajouter un rappel en commentaire dans le fichier en copiant cette ligne et en la précédant d'un dièse (#).) Chacun des quatre premiers champs peut être une valeur littérale ou *, qui correspond à tout. La première ligne correspondant aux paramètres de connexion sera utilisée (du coup, placez les entrées les plus spécifiques en premier lorsque vous utilisez des jokers). Si une entrée doit contenir : ou \, échappez ce caractère avec \. Le nom de l'hôte est rapproché du paramètre de connexion host s'il est spécifié, sinon au paramètre hostaddr si spécifié. Si ni l'un ni l'autre ne sont fournis, l'hôte localhost sera alors recherché. L'hôte localhost est également recherché si la connexion est une socket de domaine Unix et que le paramètre host correspond au répertoire par défaut de la libpq. Sur un serveur secondaire, un champ database à replication correspond aux connexions de réplication par flux au serveur maître. À part cela, le champ database est d'une utilité limitée, puisque les utilisateurs ont le même mot de passe pour toutes les bases de données de l'instance.

Sur les systèmes Unix, les droits sur un fichier de mots de passe doivent interdire l'accès au groupe et au reste du monde ; faites-le avec une commande comme chmod 0600 ~/.pgpass. Si les droits sont moins stricts, le fichier sera ignoré. Sur Microsoft Windows, il est supposé que le fichier est stocké dans un répertoire qui est sécurisé, donc aucune vérification des droits n'est effectuée.