实例访问控制可以控制来自于不同主机,不同用户是否允许访问指定的数据库,以及验证方式。
与oracle中的连接管理器的功能相同,之前有写过一篇oracleCMAN连接管理器的配置实操:
配置oracle连接管理器(cman)_oracle负责连接管理的文件-CSDN博客
了解pg_hba_conf文件:
客户端认证的配置文件
TYPE列:指定连接类型
1.local:表示本地连接,只对unix/linux 操作系统有效。
2.host:表示主机连接。
3.hostssl:表示主机连接需要SSL加密方式连接。
DATABASE列:指定连接的数据库
1.all:表示所有的数据库
2.db_name:指定数据库
3.replication:表示主备复制时的连接
USER列:指定连接的用户
1.all:表示所有的用户
2.user_name:指定用户
3.group_name:表示一组用户
4.file_name:表示文件中包含的用户列表
ADDRESS:指定连接的客户端
1.127.0.0.1/32:表示本地客户端主机
2.0.0.0.0/0:表示所有客户端主机
3.hostname:表示指定主机名
4.ip:表示指定ip地址
METHOD:指定验证方式
如:本地连接:
类似于oracle的 sqlplus / as sysdba ,无需输入密码。
远程连接:
为什么psql可以直接登录?--操作系统自动认证
psql = psql -U postgres -d postgres
类似于oracle中的oracle用户可以直接用sqlplus / as sysdba oracle中是因为oracle用户在dba组中。