default_database
default_password_type
CREATE USER u IDENTIFIED BY 'p' 这类查询中自动采用的密码类型。
可接受的值为:
-
plaintext_password -
sha256_password -
double_sha1_password -
bcrypt_password -
默认值:
sha256_password
default_profile
user_config 指定的文件中。
- 默认值:
default
default_session_timeout
- 默认值:
60
default_session_user
user 参数和 X-ClickHouse-User 请求头的 HTTP 请求、用户名为空的原生协议 Hello 数据包、用户名为空的 MySQL 或 PostgreSQL 握手、不带 user_name 的 gRPC 查询、不带 authorization 请求头的 Arrow Flight 调用 (或使用用户名为空的 Basic 凭据) ,以及 Web 终端中省略或为空的 user 字段的 WebSocket auth 消息。
在身份验证之前,空用户名会被解析为此值,因此连接仍需通过替换后用户名的身份验证:密码、网络及其他访问检查照常适用。空用户名仅是已配置用户名的别名;接受空用户名不会授予超出显式指定相同用户名时已有的任何访问权限。在引入此设置之前,空用户名仅会在普通 HTTP 查询参数路径、gRPC 查询、Arrow Flight 调用和 Web 终端中回退为 default,而原生、MySQL 和 PostgreSQL 协议会拒绝空用户名;现在这些协议均会接受空用户名。在引入此设置之前,用户名为空的 HTTP Basic 身份验证,以及带有 X-ClickHouse-Key 但不带 X-ClickHouse-User 的请求,也会拒绝空用户名。
如果设置为空字符串,则拒绝未提供用户名的连接。使用固定用户的 HTTP handler (即 http_handlers 规则中 handler 内的 user 键,或 prometheus.handlers 规则中 handler 内的 user 键) 会以配置的用户进行身份验证,不受此设置影响。
当服务器配置中启用 session_log 部分时,每次此类拒绝都会以 user 为空的 LoginFailure 事件记录到 system.session_log 中,因此可在每个接口上审计被拒绝的未提供用户名的连接。
默认会话用户绝不会用于服务器间连接:服务器间连接会使用特殊标记而非用户名来标识自身,并通过集群 secret 和初始用户进行身份验证。
可通过 protocols 部分中的 default_session_user 键,为可组合协议的特定端点覆盖此值。请参见可组合协议。