Configuration
如何在 nixos 中配置 postgres 的授權設置?
在 nixos 上,我遇到了與此問題
psql: FATAL: Peer authentication failed for user "postgres"
類似的 postgres 錯誤,並希望編輯身份驗證設置以解決該問題,如那裡的答案中所述:編輯 pg_hba.conf 以對 unix 套接字(本地連接類型)使用 md5 密碼身份驗證而不是對等身份驗證,因此 Pg 接受密碼身份驗證
我之前在 ubuntu 上通過編輯該
pg_hba.conf
文件中的授權配置解決了同樣的錯誤。但我現在的問題是,nixos 似乎沒有這樣的pg_hba.conf
編輯。如何在nixos中進行相應的postgres授權配置更改?
我注意到github 上的這個
pg_hba.conf
postgres.nix 文件似乎與,或至少包含字元串,但我不明白如何更改我的身份驗證設置。此外,我只使用了一個主配置文件/etc/nixos/configuration.nix
,這似乎是一個單獨的模組,位於nixos/modules/services/databases/postgresql.nix
.
按照這個範例配置,我設置了 NixOS 選項
services.postgresql.authentication
。
/etc/nixos/configuration.nix
當我的 postgres 部分設置為時,我設法克服了“對等身份驗證失敗”錯誤# postgres services.postgresql.enable = true; services.postgresql.package = pkgs.postgresql94; services.postgresql.authentication = lib.mkForce '' # Generated file; do not edit! # TYPE DATABASE USER ADDRESS METHOD local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust '';