加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

PostgreSQL多种认证方式

发布时间:2020-12-13 16:37:00 所属栏目:百科 来源:网络整理
导读:如何为相同的主机/数据库/用户规则设置多种身份验证方法?我想要能够使用两个sudo -u postgres psql -U postgres(而不必输入PostgreSQL密码)和psql -U postgres –password来登录我的postgres用户。 pg_hba.conf中的以下内容: local all postgres md5local
如何为相同的主机/数据库/用户规则设置多种身份验证方法?我想要能够使用两个sudo -u postgres psql -U postgres(而不必输入PostgreSQL密码)和psql -U postgres –password来登录我的postgres用户。 pg_hba.conf中的以下内容:
local   all             postgres                        md5
local   all             postgres                        peer

我只能同时获得一种方法或其他方法。

谢谢。

(我使用PostgreSQL 9.1)。

不。对于任何给定的配置,只支持一种验证方法。

我会喜欢它,如果Pg可以支持后退身份验证,如果一个ident检查失败,它允许md5 auth而不是。不过,目前它并不支持这一点,我怀疑(我还没有验证)需要一个协议更改来支持它。

您可以做的是将密码存储在Postgres系统用户的$ HOME / .pgpass文件中。给它0600模式,所以它只能被postgres用户和root读取,两者都可以直接访问数据库文件和配置。这样你就可以轻松管理和md5认证。在某些系统上,您可能必须为postgres用户设置和创建主目录,然后才能执行此操作。请参阅getent passwd postgres以查看postgres用户是否有homedir,如果是,那么它在哪里。

(更新:用于读取$ HOME / .psqlrc – 这是有用的,但.pgpass适用于密码存储)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读