KingbaseES客户端认证方式

本文详细介绍了数据库客户端认证的概念,重点讲解了KingbaseES的客户端认证机制,包括sys_hba.conf配置文件的使用,以及各种认证方法如trust、reject、scram-sha-256等。同时,提供了查看和更改认证方式的方法,例如通过修改kingbase.conf文件将认证方式设置为sha-256。
摘要由CSDN通过智能技术生成

目录

1. 什么是数据库客户端认证

2. KingbaseES的客户端认证

3. 查看当前认证方式

4. 更改认证方式


1. 什么是数据库客户端认证

客户端认证是数据库服务器建立客户端身份的过程,服务器将确定是否允许客户端应用程序(或运行客户端应用程序的用户)与所请求的数据库用户名连接。

2. KingbaseES的客户端认证

客户端认证由配置文件sys_hba.conf所控制,规定允许哪些访问数据库服务器的机器的IP,该配置文件位于数据库数据目录中。

sys_hba.conf文件的常用格式是一组记录,每行一条。空白行将被忽略, #注释字符后面的任何文本也被忽略,记录不能跨行。

每条记录声明一种连接类型、一个客户端IP地址范围(如果和连接类型相关)、一个数据库名、一个用户名、以及对匹配这些参数的连接所使用的的认证方法。

每条记录可以是下面七种格式:

local      database   user    auth-method  [auth-options]

host       database   user    ip/masklen      auth-method  [auth-options]

hostssl     database   user    ip/masklen      auth-method  [auth-options]

hostnossl   database   user    ip/masklen      auth-method  [auth-options]

host       database   user    IP-address  IP-mask  auth-method  [auth-options]

hostssl     database   user    IP-address  IP-mask  auth-method  [auth-options]

hostnossl   database   user    IP-address  IP-mask  auth-method  [auth-options]

  • 第一个字段只能是下面的取值

    local

    这条记录匹配企图使用 Unix 域套接字的连接。如果没有这种类型的记录,就不允许 Unix 域套 接字连接。

    host

    这条记录匹配企图使用 TCP/IP 建立的连接。host记录匹配SSL和非SSL的连接尝试。

    hostssl

    这条记录匹配企图使用 TCP/IP 建立的连接,但必须是使用SSL加密的连接。

    hostnossl

    这条记录的行为与hostssl相反;它只匹配那些在 TCP/IP上不使用SSL的连接企图。

  • 第二个字段用于设置一个数据库名称

    如果设置为all,表示可以匹配任何数据库;

    如果设置为replication,表示允许流复制连接,而不是允许连接到一个名为“replication”的数据库上。

  • 第三个字段用于设置一个用户的名称

    如果设置为all,表示可以匹配任何用户。

  • 地址列表

    ip/masklen:IP地址/子网掩码

    IP-address   IP-mask:IP地址 子网掩码

    表示允许哪些IP地址可以访问数据库服务器,如192.168.1.10/32表示只允许192.168.1.10这台主机访问数据库(因为掩码为32,完全匹配这个IP),192.168.1.0/24表示IP地址前缀为192.168.1.X的主机都允许访问数据库服务器。

  • 认证方法

    auth-method:表示验证方法。

    KingbaseES提供多种不同的客户端认证方式。如下表所示:

表1 认证方式

认证方式

说明

trust

无条件地允许连接

reject

无条件地拒绝连接

scram-sha-256

执行SCRAM-SHA-256认证以验证用户的密码

md5

执行SCRAM-SHA-256或MD5认证以验证用户的密码

password

要求客户端提供一个未加密的口令进行认证。

gss

用 GSSAPI 认证用户。只对TCP/IP连接可用。

sspi

用 SSPI 来认证用户。只在Windows上可用。

ident

允许客户端上的特定操作系统用户连接到数据库。Ident认证只能在TCIP/IP连接上使用。

peer

从操作系统获得客户端的操作系统用户,并且检查它是否匹配被请求的数据库用户名。这只对本地连接可用。

ldap

使用LDAP服务器认证

radius

用RADIUS服务器认证

cert

使用 SSL 客户端证书认证

pam

使用操作系统提供的可插入认证模块服务(PAM)认证

bsd

使用由操作系统提供的 BSD 认证服务进行认证

3. 查看当前认证方式

查看当前密码加密方式:

TEST=# show password_encryption;

 password_encryption

---------------------

md5

(1 row)

4. 更改认证方式

如需更改配置认证方式为sha-256,直接在kingbase.conf配置文件中修改认证方式为sha-256:

password_encryption = sha-256

修改完成后需重启数据库,数据库客户端认证方式即变更为sha-256。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>