赞
踩
- 来源 | 愿码(ChainDesk.CN)内容编辑
- 愿码Slogan | 连接每个程序员的故事
- 网站 | http://chaindesk.cn
- 愿码愿景 | 打造全学科IT系统免费课程,助力小白用户、初级工程师0成本免费系统学习、低成本进阶,帮助BAT一线资深工程师成长并利用自身优势创造睡后收入。
- 官方公众号 | 愿码 | 愿码服务号 | 区块链部落
- 免费加入愿码全思维工程师社群 | 任一公众号回复“愿码”两个字获取入群二维码
本文阅读时长:17min
在处理安全性时,记住这些级别以便以有组织的方式处理与安全相关的问题。
· 绑定地址:listen_addresses在文件中 postgresql.conf
· 基于主机的访问控制:pg_hba.conf文件
· 实例级权限:用户,角色,数据库创建,登录和复制
· 数据库级权限:连接,创建模式等
· 架构级权限:使用架构并在架构内创建对象
· 表级权限:选择,插入,更新等
· 列级权限:允许或限制对列的访问
· 行级安全性:限制对行的访问
为了读取值, PostgreSQL必须确保我们在每个级别都有足够的权限。整个权限链必须是正确的。
在本文中,您将学习处理SSL,列级安全性和配置默认权限等的过程。
配置PostgreSQL服务器时,需要做的第一件事就是定义远程访问。默认情况下,PostgreSQL不接受远程连接。重要的是由于PostgreSQL不能监听端口,所以导致它接收不到连接。如果我们尝试连接,错误消息实际上将来自操作系统。
假设有一个使用默认配置的数据库服务器192.168.0.123,将发生以下情况:
iMac:~ hs$ telnet 192.168.0.123 5432
Trying 192.168.0.123...
telnet: connect to address 192.168.0.123: Connection refused
telnet: Unable to connect to remote host
Telnet尝试在端口上创建连接,5432并立即被远程框拒绝。从外面看,看起来PostgreSQL根本就没有运行。
成功连接的关键可以在postgresql.conf文件中找到:
# - Connection Settings -
# shop_addresses ='localhost’
# 要监听的IP地址;
# 逗号分隔的地址列表;
# defaults为’localhost’; 使用’*'表示所有
# (更改需要重启)
该listen_addresses设置将告诉PostgreSQL要监听的地址。从技术上讲,这些地址是绑定地址。这究竟意味着什么?假设我们的机器中有四个IP地址。我们这些IP地址只监听其中的三个。PostgreSQL只考虑这三个IP的请求,而不考虑第四个。
如果我们放入 *,PostgreSQL会监听分配给您机器的每个IP。
但是,有更多与连接管理相关的设置对于理解非常重要。它们如下:
#port = 5432
# (change requires restart)
max_connections = 100
# (change requires restart)
# Note: Increasing max_connections costs ~400 bytes of
# shared memory per
# connection slot, plus lock space
# (see max_locks_per_transaction).
#superuser_reserved_connections = 3
# (change requires restart)
#unix_socket_directories = '/tmp'
# comma-separated list of directories
# (change requires restart)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。