2025年9月25日: PostgreSQL 18 发布!
支持的版本: 当前 (18) / 17 / 16 / 15 / 14 / 13
开发版本: devel
不支持的版本: 12 / 11

20.13. PAM 认证 #

此认证方法与 password 认证方法类似,只是它使用 PAM(可插拔认证模块)作为认证机制。默认的 PAM 服务名称是 postgresql。PAM 仅用于验证用户名/密码对,以及可选的已连接的远程主机名或 IP 地址。因此,用户必须已存在于数据库中,PAM 才能用于认证。有关 PAM 的更多信息,请参阅 Linux-PAM 页面

PAM 支持以下配置选项:

pamservice

PAM 服务名称。

pam_use_hostname

确定是向 PAM 模块通过 PAM_RHOST 项提供远程 IP 地址还是主机名。默认情况下,使用 IP 地址。将此选项设置为 1 可改用已解析的主机名。主机名解析可能导致登录延迟。(大多数 PAM 配置不使用此信息,因此只有当 PAM 配置专门用于利用此信息时,才需要考虑此设置。)

注意

如果 PAM 配置为读取 /etc/shadow,则认证将失败,因为 PostgreSQL 服务器由非 root 用户启动。但是,当 PAM 配置为使用 LDAP 或其他认证方法时,这不成问题。

提交更正

如果您在文档中看到任何不正确、与您对特定功能的实际体验不符或需要进一步澄清的内容,请使用 此表单 来报告文档问题。