配置 – 我可以在pg_hba.conf中为同一个PostgreSQL本地用户启用peer和md5身份验证吗?

配置 – 我可以在pg_hba.conf中为同一个PostgreSQL本地用户启用peer和md5身份验证吗?,第1张

概述我想让PostgreSQL(超级用户)使用“peer”或“md5”身份验证方法进行身份验证,最好在两种情况下都使用本地Unix域套接字.问题是pg_hba.conf中条目的顺序很重要,并且将应用第一个匹配. 是)我有的: # TYPE DATABASE USER ADDRESS METHOD local all harold 我想让Postgresql(超级用户)使用“peer”或“md5”身份验证方法进行身份验证,最好在两种情况下都使用本地Unix域套接字.问题是pg_hba.conf中条目的顺序很重要,并且将应用第一个匹配.

是)我有的:

# TYPE    DATABASE   USER      ADDRESS   METHOD  local   all        harold              peer  local   all        all                 md5

我想要什么(语法无效):

# TYPE    DATABASE   USER      ADDRESS   METHOD  local   all        harold              peer-or-md5  local   all        all                 md5

以下是有关我们希望在以下环境中使用的环境的更多详细信息:

在此特定服务器上,所有数据库都相对较小(每个数据<10MB)并且纯粹是只读的.每天晚上都会被哈罗德的超级用户丢弃并重新创建. harold也是一个系统帐户,因此“peer”可以很好地用于无密码cronjobs等.然后有一个访问数据库的Web界面:这使用md5身份验证(系统用户是webserver,pg用户名,密码和db名称由访客).现在我想让harold用户通过Web界面登录.由于harold的“同伴”设置,这失败了. 目前的解决方法是让web接口通过TCP连接,使用

# TYPE    DATABASE   USER      ADDRESS        METHOD  host    all        all       127.0.0.1/32   md5  host    all        all       ::1/128        md5

除了第一个例子中的本地条目.这样可行,但我宁愿在这里使用本地套接字 – 因为性能和直觉,这似乎是正确的事情.

这可能吗?我们有更好的解决方法吗?

根据 similar StackOverflow question,答案是否定的,您不能为相同类型,数据库,用户和地址启用两种类型的身份验证.

StackOverflow问题建议在用户的主目录中使用.pgpass文件并使用md5身份验证,但我不确定它是否一定适用于cron作业.

总结

以上是内存溢出为你收集整理的配置 – 我可以在pg_hba.conf中为同一个PostgreSQL本地用户启用peer和md5身份验证吗?全部内容,希望文章能够帮你解决配置 – 我可以在pg_hba.conf中为同一个PostgreSQL本地用户启用peer和md5身份验证吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1168858.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存