PostgreSQL 用户权限与安全管理

1 系统默认角色

postgres=# select rolname from pg_roles;

rolname


postgres

pg_database_owner

pg_read_all_data

pg_write_all_data

pg_monitor

pg_read_all_settings

pg_read_all_stats

pg_stat_scan_tables

pg_read_server_files

pg_write_server_files

pg_execute_server_program

pg_signal_backend

pg_checkpoint

pg_maintain

pg_use_reserved_connections

pg_create_subscription

(16 rows)

2 用户(角色)管理

#创建用户

postgres=# create user zyb with password 'zyb123';

#查看用户

postgres=# \du

List of roles

Role name | Attributes

-----------+------------------------------------------------------------

postgres | Superuser, Create role, Create DB, Replication, Bypass RLS

zyb |

#删除用户

postgres=# drop user zyb;

#授权

添加table授权(SELECT,INSERT,UPDATE,DELETE)

grant SELECT,INSERT,UPDATE,DELETE on test to zyb;

删除table授权

revoke SELECT,INSERT,UPDATE,DELETE on test from zyb;

添加database授权(CREATE,CONNECT,EMPORARY,TEMP )

GRANT CREATE,CONNECT,EMPORARY,TEMP ON DATABASE mydb TO zyb;

删除

revoke CREATE,CONNECT,EMPORARY,TEMP ON DATABASE mydb from zyb

更多帮助信息查看命令: mydb=# \h grant

3 pg_hba.conf

TYPE DATABASE USER ADDRESS METHOD

"local" is for Unix domain socket connections only

local all all trust

#本地登录不需要密码,如psql -U postgres

IPv4 local connections:

host all all 127.0.0.1/32 trust

#本地登录不需要密码,如psql -h 127.0.0.1 -U postgres

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

#TYPE

local 本地

host 远程

#ADDRESS

192.168.254.110 单个ip

192.168.254.0/24 ip段

0.0.0.0/0 所有ip都可以登录

#METHOD 常用加密方法

md5,scram-sha-256

相关推荐
嘻哈baby11 分钟前
Redis高可用部署与集群管理实战
数据库·redis·bootstrap
DolphinDB智臾科技1 小时前
DolphinDB 面向金融交易与定价的统一数据模型
数据库·时序数据库
檀越剑指大厂1 小时前
时序数据库性能之战:金仓数据库如何在复杂场景下反超 InfluxDB?
数据库·时序数据库
计算机毕设VX:Fegn08951 小时前
计算机毕业设计|基于springboot + vue图书借阅管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
数据与人2 小时前
mongodb报错Sort exceeded memory limit of 104857600 bytes
数据库·mongodb
程序员鱼皮2 小时前
消息队列从入门到跑路,保姆级教程!傻子可懂
数据库·程序员·消息队列
C++业余爱好者2 小时前
SQL语言家族入门指南:标准SQL、T-SQL与PL/SQL详解
数据库·sql
白驹过隙^^2 小时前
OB-USP-AGENT安装使用方法
数据库·经验分享·网络协议·tcp/ip·github·ssl
计算机程序设计小李同学2 小时前
基于Python的在线零食购物商城系统的设计与实现
数据库·sqlite
Java爱好狂.2 小时前
Java面试Redis核心知识点整理!
java·数据库·redis·分布式锁·java面试·后端开发·java八股文