当前位置: 首页 > web >正文

Greenplum/PostgreSQL pg_hba.conf 认证方法详解

Greenplum/PostgreSQL pg_hba.conf 认证方法详解

pg_hba.conf 文件中的 METHOD 字段指定了客户端认证方式,以下是各种认证方法的详细说明和配置示例。

常用认证方法

1. trust - 无条件允许连接

说明:不需要密码,完全信任连接
适用场景:本地开发环境、容器内部通信

# TYPE  DATABASE  USER  ADDRESS      METHOD
host    all       all   127.0.0.1/32 trust
local   all       all                trust

2. md5 - 密码认证(MD5加密)

说明:要求客户端提供MD5加密的密码
适用场景:需要基本安全的生产环境

host    all       all   0.0.0.0/0    md5

3. password/plaintext - 明文密码

说明:密码以明文传输(不安全)
适用场景:仅测试环境,不推荐生产使用

host    all       all   192.168.1.0/24 password

4. scram-sha-256 (PostgreSQL 10+)

说明:使用SCRAM-SHA-256加密,比md5更安全
适用场景:高安全要求的生产环境

host    all       all   10.0.0.0/8    scram-sha-256

5. peer - 操作系统用户认证

说明:使用客户端操作系统用户名
适用场景:本地单用户环境

local   all       all                peer

6. ident - Ident协议认证

说明:通过ident服务器验证
适用场景:特定网络环境

host    all       all   192.168.1.0/24 ident

7. cert - SSL客户端证书

说明:要求客户端提供SSL证书
适用场景:高安全要求的远程连接

hostssl all       all   0.0.0.0/0     cert

特殊认证方法

8. gss/sspi - Kerberos认证

host    all       all   0.0.0.0/0     gss

9. ldap - LDAP认证

host    all       all   0.0.0.0/0     ldap ldapserver=ldap.example.com ldapprefix="cn=" ldapsuffix=",dc=example,dc=com"

10. radius - RADIUS认证

host    all       all   0.0.0.0/0     radius radiusserver=radius.example.com radiussecret=secret

配置示例

生产环境推荐配置

# TYPE  DATABASE  USER       ADDRESS         METHOD
local   all       postgres                   peer
local   all       all                       scram-sha-256
host    all       all       127.0.0.1/32    scram-sha-256
host    all       all       ::1/128         scram-sha-256
hostssl all       all       10.0.0.0/8      scram-sha-256
hostssl all       admins    0.0.0.0/0       cert

开发环境简化配置

local   all       all                       trust
host    all       all       192.168.1.0/24  md5

方法安全性比较

方法安全性加密方式适用版本
trust所有
md5MD5哈希所有
scram-sha-256SHA-256PG10+
password明文所有
cert最高SSL证书所有

配置后操作

  1. 重新加载配置:

    # Greenplum
    gpstop -u# PostgreSQL
    pg_ctl reload
    
  2. 验证配置:

    psql -h [host] -U [user] -d [db]
    

注意:md5 方法在Greenplum中仍然广泛使用,但新部署建议使用 scram-sha-256 以获得更好安全性。

http://www.xdnf.cn/news/14617.html

相关文章:

  • 【Node.js 的底层实现机制】从事件驱动到异步 I/O
  • TradingAgents:基于多智能体的大型语言模型(LLM)金融交易框架
  • vue | vue 插件化机制,全局注册 和 局部注册
  • 【音视频】PJSIP库——pjsua命令使用详解
  • 【C语言极简自学笔记】重讲运算符
  • LeetCode 632.最小区间
  • ChangeNotifierProvider 本质上也是 Widget
  • 利用tkinter函数构造MD5加密的可视化操作界面
  • 【创龙瑞芯微 RK3576 全国产 ARM 八核 2.2GHz 工业开发板-硬件说明书】
  • 注意力机制、自注意力机制、多头注意力机制、通道注意力机制、空间注意力机制超详细讲解
  • 二分K-means:让聚类更高效、更精准!
  • CAD旋转包围盒_有向包围盒_obb_最小外包矩形——CAD c#二次开发
  • 【对比】DeepAR 和 N-Beats
  • 【CUDA编程】OptionalCUDAGuard详解
  • 质量小议55 - 搜索引擎与AI
  • C语言——结构体
  • 深入剖析Spring Cloud Sentinel,如何实现熔断降级,请求限流
  • C++ 学习 网络编程 2025年6月17日19:56:47
  • MySQL的Sql优化经验总结
  • 浅谈开发者重构的时机选择
  • 如何确定驱动480x320分辨率的显示屏所需的MCU主频
  • DBeaver数据库管理工具的简介、下载安装与优化配置
  • [IMX][UBoot] 02.源码目录
  • Python格式化工具推荐
  • Java中final修饰符
  • 第五章:执行计划分析 - 读懂MySQL的执行策略
  • 一款完美适配mobile、pad、web三端的博客网站UI解决方案
  • 《单光子成像》第六章 预习2025.6.15
  • 【驱动设计的硬件基础】I²C
  • 数据质量-如何构建高质量的大模型数据集