PostgreSQL技术大讲堂 - Part 9:pg_hba.conf配置

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介: PostgreSQL pg_hba.conf配置

PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。

Part 9:实例连接访问控制

内容1:PG实例访问控制概述

内容2:pg_hba.conf 文件

内容3:pg_hba.conf 名单格式

内容4:pg_hba.conf 常见配置实例

9.1、PG实例访问控制概述

实例访问控制就像是一道防火墙,用它来控制来自于不同主机、不同用户是否允许访问指定的数据库、以及验证方式。

9.2、pg_hba.conf文件

客户端认证是由一个配置文件(通常名为pg_hba.conf并被存放在数据目录中)控制(HBA表示基于主机的认证)。

在initdb初始化数据目录时,它会安装一个默认的pg_hba.conf文件。不过我们也可以把认证配置文件放在其它地方。

pg_hba.conf文件的常用格式是一组记录,每行一条。空白行将被忽略, #注释字符后面的任何文本也被忽略。记录不能跨行。

一条记录由若干用空格/或制表符分隔的域组成。如果域值用双引号包围,那么它可以包含空格。在数据库、用户或地址域中 引用一个关键字(例如,all或replication) 将使该词失去其特殊 含义,并且只是匹配一个有该名字的数据库、用户或主机。

9.3、pg_hba.conf名单格式

TYPE:指定连接类型

local:表示本地连接,只对Unix/Linux系统有效,使用socket方式登录

host:表示主机通过TCP/IP连接

hostssl:表示主机连接需要SSL加密方式连接

DATABASE:指定连接的数据库

all:表示所有的数据库

db_name:表示指定的数据库

replication:表示主备复制时的连接

USER:指定连接的用户

all:表有所有用户 ? user_name:表示指定的用户

+group_name:表示一组用户

@file_name:表示文件中包含的用户列表

ADDRESS:指定连接的客户端

127.0.0.1/32:表示本地客户端主机

0.0.0.0/0:表示所有客户端主机

host_name:表示指定的主机名(hosts文件中包含)

ip_addr/net_mask:表示指定的ip地址或者网段

pg_hba.conf 示例:

host all +g1 0.0.0.0/0 md5 #g1组

host all u1 192.168.18.0/24 md5 #某个网段

METHOD:指定验证方式

trust:信任客户端连接,无需提供密码

scram-sha-256:这是当前提供的方法中最安全的一种,但是旧的客户端库不支持这种方法。

md5:它能防止口令嗅探并且防止口令在服务器上以明文存储,但是无法保护攻击者想办法从服务器上窃取了口令哈希的情况。

password:方法password以明文形式发送口令,因此它对于口令“嗅探”攻击很脆弱。

ident:该模式下系统会将请求发起者的操作系统用户映射为PostgesSQL数据库内 部用户,并以该内部用户的权限登录,且此时无需提供登录密码。操作系统用户 与数据库内部用户之间的映射关系会记录在pg_ident.conf文件中。

peer:该模式使用连接发起端的操作系统名进行身份验证。仅限于Linux、BSD、 Mac OS X和Solaris,并且仅可用于本地服务器发起的连接。

reject:该模式表示拒绝所有请求。

9.4、pg_hba.conf常见配置实例

常见配置实例

TYPE DATABASE USER ADDRESS METHOD

"local" is for Unix domain socket connections only

local all all trust

IPv4 local connections:

host all all 127.0.0.1/32 trust

IPv6 local connections:

host all all ::1/128 trust

Allow replication connections from localhost, by a user with the

replication privilege.

local replication all trust

host replication all 127.0.0.1/32 trust

host replication all ::1/128 trust

host all +g1 192.168.18.0/24 md5

host all cuug 0.0.0.0/0 identmap=cuug

以上就是Part 9 - PostgreSQL实例连接访问控制 的内容,欢迎进群一起探讨交流,钉钉交流群:35,82,24,60,往期视频文档可以联系cuug咨询老师

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
2月前
|
Cloud Native 关系型数据库 分布式数据库
开发者视角看云原生数据库一体化技术趋势
随着云原生数据库技术的不断发展,一体化数据库解决方案成为技术圈的热点,云原生数据库一体化技术是当前数据库领域的重要趋势,对于开发者而言,学习理解和应对这一趋势,对于业务开发的成功实施非常重要。比如,阿里云瑶池数据库和PolarDB-X等产品通过离在线一体化、处理分析一体化和集中分布一体化等创新理念,引领了数据库领域的新变革。那么本文就来从开发者的角度探讨云原生数据库一体化技术趋势,并分析在业务处理分析一体化、集中式与分布式数据库边界模糊和云原生一体化数据库的选择等方面的影响。
194 4
|
2月前
|
DataWorks Java 关系型数据库
DataWorks常见问题之将预警信息发送至邮箱
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
39 1
|
3月前
|
关系型数据库 分布式数据库 数据库
阿里云PolarDB登顶2024中国数据库流行榜:技术实力与开发者影响力
近日,阿里云旗下的自研云原生数据库PolarDB在2024年中国数据库流行度排行榜中夺冠,并刷新了榜单总分纪录,这一成就引起了技术圈的广泛关注。这一成就源于PolarDB在数据库技术上的突破与创新,以及对开发者和用户的实际需求的深入了解体会。那么本文就来分享一下关于数据库流行度排行榜的影响力以及对数据库选型的影响,讨论PolarDB登顶的关键因素,以及PolarDB“三层分离”新版本对开发者使用数据库的影响。
82 3
阿里云PolarDB登顶2024中国数据库流行榜:技术实力与开发者影响力
|
2月前
|
SQL 关系型数据库 MySQL
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(8.0版本升级篇)
98 0
|
12天前
|
Java 关系型数据库 MySQL
一套java+ spring boot与vue+ mysql技术开发的UWB高精度工厂人员定位全套系统源码有应用案例
UWB (ULTRA WIDE BAND, UWB) 技术是一种无线载波通讯技术,它不采用正弦载波,而是利用纳秒级的非正弦波窄脉冲传输数据,因此其所占的频谱范围很宽。一套UWB精确定位系统,最高定位精度可达10cm,具有高精度,高动态,高容量,低功耗的应用。
一套java+ spring boot与vue+ mysql技术开发的UWB高精度工厂人员定位全套系统源码有应用案例
|
2月前
|
canal 消息中间件 关系型数据库
【分布式技术专题】「分布式技术架构」MySQL数据同步到Elasticsearch之N种方案解析,实现高效数据同步
【分布式技术专题】「分布式技术架构」MySQL数据同步到Elasticsearch之N种方案解析,实现高效数据同步
90 0
|
2月前
|
SQL 关系型数据库 MySQL
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(数据恢复补充篇)(一)
【MySQL技术专题】「问题实战系列」深入探索和分析MySQL数据库的数据备份和恢复实战开发指南(数据恢复补充篇)
31 0
|
2月前
|
SQL 关系型数据库 MySQL
【MySQL技术之旅】(7)总结和盘点优化方案系列之常用SQL的优化
【MySQL技术之旅】(7)总结和盘点优化方案系列之常用SQL的优化
71 1
|
2月前
|
Cloud Native OLAP OLTP
如何看待云原生数据库一体化的技术趋势?
面对业务处理分析一体化,开发者需平衡OLTP和OLAP数据库需求。关键在于理解业务目标,选择适合的数据库:OLTP注重高并发、低延迟,如MySQL、PostgreSQL;OLAP侧重复杂查询和数据聚合,如Greenplum、ClickHouse。云原生数据库提供弹性扩展和容灾能力。数据同步、一致性、安全性和合规性也是重要考量因素。开发者应持续关注新技术,以适应不断变化的业务需求。
|
4月前
|
关系型数据库 网络安全 数据安全/隐私保护
你会开启Postgresql 的SSL单向认证 配置?
你会开启Postgresql 的SSL单向认证 配置?
你会开启Postgresql 的SSL单向认证 配置?