墨墨导读:本文主要介绍PostgreSQL数据库中一些常见用户安全配置。
1. 限制用户连接数
postgres=# create user app1 connection limit 5;CREATE ROLE
2. 修改默认端口
postgres=# select * from current_setting('port');current_setting-----------------6000(1 row)
3. 不使用默认postgres数据库
postgres=# create database my_app_db owner app1;CREATE DATABASEpostgres=# \c my_app_dbYou are now connected to database "my_app_db" as user "postgres".my_app_db=# drop database postgres;DROP DATABASE
4. 自定义超级用户
$ initdb -D opt/data6000/ -U admin -W
5. 修改监听地址
#listen_addresses = 'localhost'#listen_addresses = '192.168.99.100'#listen_addresses = '192.168.99.100,192.168.99.200'
6. 配置客户端认证
# 服务端本地数据库用户免密登录local all all trust# 拒绝超级用户从网络登录host all postgres 0.0.0.0/0 reject# 其它用户密码验证登陆host all all 0.0.0.0/0 scram-sha-256# 流复制用户密码验证登录host replication replica 192.168.99.101/32 md5
7. 设置socket访问方式
unix_socket_directories='$PGDATA'unix_socket_group=''unix_socket_permissions='0700'
8. 使用pgpass文件
Linux$ cat .pgpass192.168.99.200:5432:postgres:postgres:admin192.168.99.227:6432:*:app1:yourPasswordwin10C:\Users\pcsuc\AppData\Roaming\postgresql\pgpass.conflocalhost:5432:*:postgres:admin192.168.99.227:6432:*:app1:yourPassword
9. 用户密码安全策略
10. 权限配置
revoke all on DATABASE XXX from public;
可参考《PostgreSQL用户表权限设计与配置》(链接:https://www.modb.pro/db/23483)
11. 记录数据库日志并清理
配置日期过期策略,如配置最大100个循环写文件,或按周循环等。
12. 备份恢复测试
13. 备份数据文件加密存储
14. 小版本升级
定期升级数据库小版本,下面是源码方式升级主要步骤:
下载编译新版本的源码程序到新目录
重新编译现有数据库所有源码安装的扩展
停数据库服务
使用符号链接新目录到原目录
新版本服务启动
检查无误后移除旧版本
推荐阅读:144页!分享珍藏已久的数据库技术年刊

数据和云
ID:OraNews
如有收获,请划至底部,点击“在看”,谢谢!
点击下图查看更多 ↓
文章转载自数据和云,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。








