pg_hba.conf、pool_hba.conf 以及 pool_passwd 三者间的关系:

1.pg_hba.conf、pool_hba.conf 以及 pool_passwd 三者关系
pg_hba.conf 是 PostgreSQL 数据库的客户端认证配置文件,用于对访问 PostgreSQL 数据库的请求实施访问认证控制。
pool_hba.conf 是 PGPool-II 中间件的客户端认证配置文件,用于对访问 PGPool-II 中间件的请求实施访问认证控制。同时,因为 PGPool-II 从架构上位于 PostgreSQL 之前,因此请求需要先通过 PGPool-II 的认证控制,随后通过 PostgreSQL 的认证控制。
pool_passwd 是 PGPool-II 的认证文件。一方面,由于 PGPool-II 无法获取 PostgreSQL 数据库上的用户密码信息,因此其通过检查 pool_passwd 内用户名及密码的方式,校验请求输入的用户名及密码是否正确。另一方面,当请求通过 PGPool-II 认证后,PGPool-II 将利用 pool_passwd 内保存的用户名及密码,连接后端 PostgreSQL 数据库,进行请求。(待验证)
2.pg_hba.conf、pool_hba.conf 以及 pool_passwd 三者对认证结果的影响
以 md5 认证控制方式为例,pg_hba.conf、pool_hba.conf 以及 pool_passwd 三者对认证结果的影响如下表所示。
pg_hba.conf 设置的认证控制方式 pool_hba.conf 设置的认证控制方式 用户密码值是否存在于pool_passwd 结果
md5 md5 yes PGPool-II 及 PostgreSQL 层面均进行 md5 认证。 
md5 md5 no PGPool-II 及 PostgreSQL 层面均进行 md5 认证,但由于用户密码没有保存于 pool_passwd 文件中,导致 PGPool-II 层验证失败,报错 "MD5" authentication with pgpool failed for user "XX"
md5 trust yes/no 当 PGPool-II 工作于复制、主备、并行等模式时,无法进行 md5 认证。PGPool-II 接收到请求后,直接利用 pool_passwd 内的用户密码值,对后端 PostgreSQL 进行请求。
对于非上述情况的,则采用 md5 认证。
trust md5 yes PGPool-II 层面验证成功,直接对无须验证的 PostgreSQL 后端数据库发起请求。
trust md5 no PGPool-II 层面验证失败,报错 "MD5" authentication with pgpool failed for user "XX"
trust trust yes/no 不做任何验证
 
参考资料:
(1).https://pgpool.net/mediawiki/index.php/FAQ#I_created_pool_hba.conf_and_pool_passwd_to_enable_md5_authentication_through_pgpool-II_but_it_does_not_work._Why.3F
 
 

li {list-style-type:decimal;}.wiz-editor-body ol.wiz-list-level2 > li {list-style-type:lower-latin;}.wiz-editor-body ol.wiz-list-level3 > li {list-style-type:lower-roman;}.wiz-editor-body blockquote {padding: 0 12px;}.wiz-editor-body blockquote > :first-child {margin-top:0;}.wiz-editor-body blockquote > :last-child {margin-bottom:0;}.wiz-editor-body img {border:0;max-width:100%;height:auto !important;margin:2px 0;}.wiz-editor-body table {border-collapse:collapse;border:1px solid #bbbbbb;}.wiz-editor-body td,.wiz-editor-body th {padding:4px 8px;border-collapse:collapse;border:1px solid #bbbbbb;min-height:28px;word-break:break-word;box-sizing: border-box;}.wiz-hide {display:none !important;}
-->

pg_hba.conf、pool_hba.conf 以及 pool_passwd 三者间的关系的更多相关文章

  1. JDK与JRE、JVM三者间的关系及JDK的安装部署

    JDK与JRE.JVM三者间的关系及JDK的安装部署 一.JDK与JRE.JVM三者间的关系 JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了 ...

  2. 连接池、数据源、JNDI三者间的关系及用法

    连接池:连接池是由容器(比如Tomcat)提供的,用来管理池中的连接对象.连接池自动分配连接对象并对闲置的连接进行回收.连接池中的连接对象是由数据源(DataSource)创建的.连接池(Connec ...

  3. Activity、Window和View三者间的关系有一定的见解

    一.简述如何将Activity展现在手机上 Tips: Activity本身是没办法处理显示什么控件(view)的,是通过PhoneWindow进行显示的 换句话说:activity就是在造Phone ...

  4. JDK、JRE、JVM三者间的关系

    JDK(Java Development Kit)是针对Java开发员的产品,是整个Java的核心,包括了Java运行环境JRE.Java工具和Java基础类库.Java Runtime Enviro ...

  5. 区分.net、c#、asp.net三者间的关系

    1..net(dot net) .net是一个平台,抽象的平台概念. 实现形式是库:①定义了基本的类型(通用类型系统CTS,common type system).   ②包含.net公共语言运行库( ...

  6. JDK、JRE、JVM三者间的关系(待更新...)

    JDK(Java Development Kit) JDK中包含JRE,在JDK的安装目录下有一个名为jre的目录,里面有两个文件夹bin和lib,在这里可以认为bin里的就是jvm,lib中则是jv ...

  7. JDK、JVM和JRE三者间的关系,及JDK安装路径下的文件夹说明

    JDK的全称是Java SE Development Kit, 即Java标准开发包,是Sun公司提供的一套用于开发Java应用程序的开发包, 它提供了编译.运行Java查询所需的各种工具和资源,包括 ...

  8. 【转】SVN添加文件时的错误处理:...\conf\svnserve.conf:12: Option expected

    转载地址:http://www.linuxidc.com/Linux/2014-09/106683.htm 安装完SVN服务器,添加完用户权限后,准备将本地的项目add到服务器上时,报"C: ...

  9. D:/apache2/conf/httpd.conf:Cannot load D:/apache2/modules/mod_actions.so

    报错如下: errors reported here must be corrected before service can be started.httpd:Syntax error on lin ...

随机推荐

  1. Scrum立会报告+燃尽图(3)选题

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2193 一.小组介绍 组长:刘莹莹 组员:朱珅莹 孙韦男 祝玮琦 王玉潘 ...

  2. 2018.12.20 L195

    Every Brazilian, including current and former members of the armed forces, will have to compromise u ...

  3. Ubuntu下制作系统启动盘

    制作系统U盘: $ sudo umount /dev/sdc1 $ -desktop-amd64.iso of=/dev/sdc + records in + records out bytes (1 ...

  4. POI2012题解

    POI2012题解 这次的完整的\(17\)道题哟. [BZOJ2788][Poi2012]Festival 很显然可以差分约束建图.这里问的是变量最多有多少种不同的取值. 我们知道,在同一个强连通分 ...

  5. HDU3530 Subsequence(单调队列)

    题意是说给出一个序列,现在要求出这个序列的一个最长子区间,要求子区间的最大值与最小值的差在[m, k]范围内,求区间长度 做法是维护两个队列,一个维护到当前位置的最大值,一个维护最小值,然后计算当前节 ...

  6. celery docker 基本使用

    项目参考官网资料,比较简单的add task 具体代码参考https://github.com/rongfengliang/celery-docker-demo 项目结构 ├── README.md ...

  7. fb远程连接服务器调试,碉堡了

    开发中经常碰到本地代码没问题,上传到服务器上就有有问题, 这个时候调试变的很麻烦,放个textField自己保存日志这种方式调试的都是. 今天刚学了远程连接服务器,adobe真是牛逼坏了啊. 新增一个 ...

  8. xmlns和xsi之schemaLocation

    appplicationContex.xml文件报错:元素 "util:constant" 的前缀 "util" 未绑定 在根节点添加了“xmlns:util= ...

  9. jdk版本对应数字

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springfr ...

  10. C++等语言中整型int等的取值范围计算方式

    举short为例说明 如果以最高位为符号位,二进制原码最大为0111111111111111=2的15次方减1=32767.最小为1111111111111111=-2的15次方减1=-32767此时 ...