配置文件参考
表5-2 参数说明
参数名称 | 描述 | 取值范围 |
---|---|---|
local | 表示这条记录只接受通过Unix域套接字进行的连接。没有这种类型的记录,就不允许Unix域套接字的连接。 只有在从服务器本机使用vsql连接且在不指定-U参数的情况下,才是通过Unix域套接字连接。 | - |
host | 表示这条记录既接受一个普通的TCP/IP套接字连接,也接受一个经过SSL加密的TCP/IP套接字连接。 | - |
hostssl | 表示这条记录只接受一个经过SSL加密的TCP/IP套接字连接。 | 用SSL进行安全的连接,需要配置申请数字证书并配置相关参数,详细信息请参见5.1.3SSL证书管理。 |
hostnossl | 表示这条记录只接受一个普通的TCP/IP套接字连接。 | - |
DATABASEGUC | 声明记录所匹配且允许访问的数据库。 |
- all:表示该记录匹配所有数据库。
- sameuser:表示如果请求访问的数据库和请求的用户同名,则匹配。 - samerole:表示请求的用户必须是与数据库同名角色中的成员。 - samegroup:与samerole作用完全一致,表示请求的用户必须是与数据库同名角色中的成员。 - 一个包含数据库名的文件或者文件中的数据库列表:文件可以通过在文件名前面加前缀@来声明。文件中的数据库列表以逗号或者换行符分隔。 - 特定的数据库名称或者用逗号分隔的数据库列表。 说明: 值replication表示如果请求一个复制链接,则匹配,但复制链接不表示任何特定的数据库。如需使用名为replication的数据库,需在database列使用记录“replication”作为数据库名。 |
USER | 声明记录所匹配且允许访问的数据库用户。 |
- all:表明该记录匹配所有用户。
- +用户角色:表示匹配任何直接或者间接属于这个角色的成员。 说明: +表示前缀符号。 - 一个包含用户名的文件或者文件中的用户列表:文件可以通过在文件名前面加前缀@来声明。文件中的用户列表以逗号或者换行符分隔。 - 特定的数据库用户名或者用逗号分隔的用户列表。 |
ADDRESS | 指定与记录匹配且允许访问的IP地址范围。 | 支持IPv4和IPv6,可以使用如下两种形式来表示:
- IP地址/掩码长度。例如,10.10.0.0/24 - IP地址子网掩码。例如,10.10.0.0 255.255.255.0 说明: 以IPv4格式给出的IP地址会匹配那些拥有对应地址的IPv6连接,比如127.0.0.1将匹配IPv6地址 ::ffff:127.0.0.1 |
METHOD | 声明连接时使用的认证方法。 | 本产品支持如下几种认证方式,详细解释请参见表5-3:
- trust - reject - md5(不推荐使用,默认不支持,可通过password_encryption_type参数配置) - sha256 - cert - gss(仅用于Vastbase内部节点间认证) |
表5-3 认证方式
认证方式 | 说明 |
---|---|
trust | 采用这种认证模式时,本产品只完全信任从服务器本机使用vsql且不指定-U参数的连接,此时不需要口令。
trust认证对于单用户工作站的本地连接是非常合适和方便的,通常不适用于多用户环境。如果想使用这种认证方法,可利用文件系统权限限制对服务器的Unix域套接字文件的访问。要使用这种限制有两个方法: - 设置参数unix_socket_permissions和unix_socket_group。 - 设置参数unix_socket_directory,将Unix域套接字文件放在一个经过恰当限制的目录里。 须知: 设置文件系统权限只能Unix域套接字连接,它不会限制本地TCP/IP连接。为保证本地TCP/IP安全,Vastbase不允许远程连接使用trust认证方法。 |
reject | 无条件地拒绝连接。常用于过滤某些主机。 |
md5 | 要求客户端提供一个md5加密的口令进行认证。
须知: 不推荐使用md5认证,因为md5为不安全的加密算法,存在网络安全风险。Vastbase保留md5认证和密码存储,是为了便于第三方工具的使用(比如TPCC评测工具)。 |
sha256 | 要求客户端提供一个sha256算法加密的口令进行认证,该口令在传送过程中结合salt(服务器发送给客户端的随机数)的单向sha256加密,增强了安全性。 |
cert | 客户端证书认证模式,此模式需进行SSL连接配置且需要客户端提供有效的SSL证书,不需要提供用户密码。
须知: 该认证方式只支持hostssl类型的规则。 |
gss | 使用基于gssapi的kerberos认证。
须知: 该认证方式依赖kerberos server等组件,仅支持Vastbase内部通信认证。当前版本暂不支持外部客户端通过kerberos认证连接。 开启Vastbase内部kerberos认证会使增加内部节点建连时间,即影响首次涉及内部建连的SQL操作性能,内部连接建立好后, 后续操作不受影响。 |