[转帖]postgresql 的 pg_hba.conf 的行记录顺序

postgresql,pg,hba,conf,记录,顺序 · 浏览次数 : 0

小编点评

pg_hba.conf 的行记录顺序确实与匹配参数和认证方法无关,遵循细化优先的规则。 **原因:** * **每个连接尝试都会顺序检查pg_hba.conf记录。** * **记录的顺序非常关键,因为它们用于匹配连接请求。** * **靠前的记录具有更严的匹配参数和更强的认证方法。** * **靠后的记录具有更松的匹配参数和更弱的认证方法。** **结论:** pg_hba.conf中的行记录顺序是不可改变的,因为它们用于确定连接请求的匹配顺序。

正文

postgresql: 9.6

一直觉得 pg_hba.conf 的行记录与顺序无关,遵循细化优先的规则。今天在回顾 pg_hba.conf 文档时发现这种认识是错的。

下面这段话是从文档拷贝过来的:

因为每一次连接尝试都会顺序地检查pg_hba.conf记录,所以这些记录的顺序是非常关键的。通常,靠前的记录有比较严的连接匹配参数和比较弱的认证方法,而靠后的记录有比较松的匹配参数和比较强的认证方法。 例如,我们希望对本地 TCP/IP 连接使用trust认证,而对远程 TCP/IP 连接要求口令。在这种情况下为来自于 127.0.0.1 的连接指定trust认证的记录将出现在为一个更宽范围的客户端 IP 地址指定口令认证的记录前面。

# IPv4 local connections:
host    all             postgres        127.0.0.1/32            trust
host    all             all             127.0.0.1/32            md5

    # IPv4 local connections:
    host    all             all             127.0.0.1/32            md5
    host    all             postgres        127.0.0.1/32            trust
    

      的效果完全不同,有兴趣的哥们可以验证下。

      一个典型的 pg_hba.conf 的记录如下

      local all all trust
      host all all 127.0.0.1/32 trust
      host all all ::1/128 trust
      host all all 0.0.0.0/0 md5
      host all all ::0/0 md5
      

        参考:
        http://postgres.cn/docs/9.6/auth-pg-hba-conf.html

        文章知识点与官方知识档案匹配,可进一步学习相关知识
        PostgreSQL技能树首页概览4111 人正在系统学习中

        与[转帖]postgresql 的 pg_hba.conf 的行记录顺序相似的内容:

        [转帖]postgresql 的 pg_hba.conf 的行记录顺序

        postgresql: 9.6 一直觉得 pg_hba.conf 的行记录与顺序无关,遵循细化优先的规则。今天在回顾 pg_hba.conf 文档时发现这种认识是错的。 下面这段话是从文档拷贝过来的: 因为每一次连接尝试都会顺序地检查pg_hba.conf记录,所以这些记录的顺序是非常关键的。通常,

        [转帖]pg_hba.conf 中 md5 和 scram-sha-256 的区别

        db: postgresql 11 auth-method 指定当一个连接匹配这个记录时,要使用的认证方法。下面对可能的选择做了概述,详见第 20.3 节。 trust 无条件地允许连接。这种方法允许任何可以与PostgreSQL数据库服务器连接的用户以他们期望的任意PostgreSQL数据库用户身

        [转帖]postgresql 的 .pgpass密码文件的使用

        .pgpass 是 连接 postgresql 时使用的密码文件,通常位置为 ~/.pgpass。 在使用某些组件时还真的必须使用。具体的格式为: hostname:port:database:username:password 常见的使用如下: # su - postgres $ vi ~/.pg

        [转帖]PostgreSQL的xlog/Wal归档及日志清理

        PostgreSQL的xlog/Wal归档及日志清理 https://www.modb.pro/db/86041 xlog/wal日志 类似于Oracle的redo, PostgreSQL 的redo文件被称为WAL文件或XLOG文件,存放在$PGDATA/pg_xlog 或($PGDATA/pg_

        [转帖]PostgreSQL任意命令执行漏洞利用(CVE-2019-9193)

        https://zhuanlan.zhihu.com/p/143443516 最近没事曰曰内网,偶然发现了一个使用空密码的pg(是的,连爆破都省了)。用navicat连上去看了下几个库都是一些业务测试数据,没什么好收集;不死心,google了一下发现有个比较新的CVE好像可以操作一下~ 漏洞概述 最

        [转帖]PostgreSQL数据加载工具之pg_bulkload

        https://www.jianshu.com/p/b576207f2f3c 1. pg_bulkload介绍 PostgreSQL提供了一个copy命令的便利数据加载工具,copy命令源于PostgreSQL数据库,copy命令支持文件与表之间的数据加载和表对文件的数据卸载。pg_bulkload

        [转帖]PostgreSQL 统计所有数据表各自的总行数

        一般来说,可以使用 count(*) 来获取具体某张表的总行数: SELECT count(0) FROM t_user; 如果想获得所有表的行数信息,可以使用以下 SQL 语句: SELECT relname, reltuplesFROM pg_class CLS LEFT JOIN pg_nam

        [转帖]pgbench(postgresql压力测试工具)

        pgbench 名称 pgbench -- 在PostgreSQL中执行基准线测试 大纲 pgbench -i [option...] [dbname] pgbench [option...] [dbname] 描述 pgbench是一个用于在PostgreSQL数据库中运行基准测试的简单程序。pg

        [转帖]pgbench 使用介绍及示例

        pgbench 使用介绍及示例 https://www.cnblogs.com/cqdba/ 1.pgbench概要 pgbench是一种在PostgreSQL上运行基准测试的简单程序, 它是pg自带的工具; 它可能在并发的数据库会话中一遍一遍地运行相同序列的 SQL 命令,并且计算平均事务率(每秒

        [转帖]PG Exporter

        http://v0.pigsty.cc/zh/docs/reference/kernel-optimize/ Exporter https://github.com/Vonng/pg_exporter 完全自研的 pg_exporter, 用于收集postgres与pgbouncer的指标: 支持P