认证和授权
得益于 ShardingSphere 的可插拔架构,Proxy 提供了两种级别的权限提供者,分别是:
ALL_PERMITTED
:每个用户都拥有所有权限,无需专门授权;DATABASE_PERMITTED
:为用户授予指定逻辑库的权限,通过user-database-mappings
进行定义。
在配置 authority
时,管理员可根据需要选择使用哪一种权限提供者。
- 定义了两个用户:
root@%
和sharding
; - 未定义
authenticators
和authenticationMethodName
,Proxy 将根据前端协议自动选择; - 未指定
privilege type
,采用默认的ALL_PERMITTED
。
自定义认证配置能够满足用户在一些特定场景下的需求。 以 作为前端协议类型为例,其默认的认证算法为 scram-sha-256
。 如果用户 sharding
需要用旧版本的 psql 客户端(不支持 scram-sha-256
)连接 Proxy,则管理员可能允许 sharding 使用 md5 方式进行密码认证。 配置方式如下:
说明:
- 定义了两个用户:
root@127.0.0.1
和sharding
; - 没有为
root@127.0.0.1
指定认证方式,Proxy 将根据前端协议自动选择; - 指定权限提供者为
ALL_PERMITTED
。
ALL_PERMITTED
- 定义了两个用户:
root@127.0.0.1
和 ; - 未定义
authenticators
和authenticationMethodName
,Proxy 将根据前端协议自动选择; - 指定权限提供者为
ALL_PERMITTED
。
DATABASE_PERMITTED
说明:
- 定义了两个用户:
root@127.0.0.1
和sharding
; - 未定义
authenticators
和authenticationMethodName
,Proxy 将根据前端协议自动选择;
权限提供者具体实现可以参考 。