Skip to content

21.13. PAM 身份验证#

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

PAM 支持以下配置选项

pamservice

PAM 服务名称。

pam_use_hostname

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

注意

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