Fra*_*cis 7 postgresql ldap authentication
我目前使用“md5”身份验证从局域网访问:
host all all 192.168.1.0/24 md5
我想添加ldap身份验证方法,所以我之前添加了这一行:
host all all 192.168.1.0/24 ldap "ldap://192.168.1.2/basedn;uid=;,cn=xx,dc=yy,dc=zz,dc=ca"
这适用于 ldap 帐户,但如果我尝试使用 LDAP 服务器上不存在的帐户登录,则登录失败(postgresql 不尝试 md5 身份验证)。
有没有一种方法可以使用 postgresql 支持多种身份验证方法?
不 -- Since the pg_hba.conf records are examined sequentially for each connection attempt, the order of the records is significant.
-- 换句话说“第一场比赛是我要使用的方法”。在继续进行“所有用户”LDAP 身份验证之前,
您必须明确列出所有本地 ( md5
) 帐户才能使其工作(并且维护pg_hba.conf
文件开始变得麻烦)。
作为一种解决方法,您可以使用pam
身份验证方法,并将 PAM 的“postgres”服务配置为使用您希望的任何方法(包括回退到备用方法),但这限制了您在系统上安装/配置的任何 PAM 模块。
(对于“限制”的适当宽泛的定义——例如,如果您使用 PAM 作为身份验证方法,您可以为 Postgres 帐户使用一次性密码)。