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

33.15. 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 profile 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 en commentaire dans le fichier cette ligne que vous précédez d'un dièse (#).) Chacun des quatre premiers champs pourraient être une valeur littérale ou * (qui correspond à tout). La première ligne réalisant une correspondance pour les paramètres de connexion sera utilisée (du coup, placez les entrées plus spécifiques en premier lorsque vous utilisez des jokers). Si une entrée a besoin de contenir : ou \, échappez ce caractère avec \. Le champ du nom d'hôte est mis en correspondance avec le paramètre de connexion host s'il est spécifié. Dans le cas contraire, c'est fait avec le paramètre hostaddr. Si ni l'un ni l'autre ne sont indiqués, le nom d'hôte localhost est cherché. Le nom d'hôte localhost est aussi recherché quand la connexion est une connexion de socket de domaine Unix et que le paramètre host correspond au chemin de répertoire par défaut de la socket pour libpq. Dans un serveur en standby, le champ de la base de données à replication correspond aux connexions réalisées par le serveur maître pour la réplication en flux. Le champ database est d'une utilité limitée car les utilisateurs ont le même mot de passe pour toutes les bases de données de la même 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 par cette commande : chmod 0600 ~/.pgpass. Si les droits sont moins stricts que cela, 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.