ACL
ACL CAT
语法
ACL CAT [category]
如果没有参数调用,此命令将显示可用的 ACL 类别。如果给定类别名称,此命令将显示指定类别中的所有 Garnet 命令。
Resp 回复
以下之一
- 数组回复:表示 ACL 类别或给定类别中命令的批量字符串回复元素的数组。
- 简单错误回复:如果给定无效类别名称,此命令将返回错误。
ACL DELUSER
语法
ACL DELUSER username [username ...]
删除所有指定的 ACL 用户并终止所有使用这些用户进行身份验证的连接。注意:特殊的默认用户不能从系统中删除,这是每个新连接都将进行身份验证的默认用户。用户列表可能包含不存在的用户名,在这种情况下,对不存在的用户不执行任何操作。
Resp 回复
整数回复:已删除的用户数。此数字不总是与参数数量匹配,因为某些用户可能不存在。
ACL GETUSER
语法
ACL GETUSER username
此命令返回为现有 ACL 用户定义的所有规则。
具体来说,它列出了用户的 ACL 标志、密码哈希和命令。
Resp 回复
以下之一
- 数组回复:用户的 ACL 规则定义列表。
- 空回复:如果用户不存在。
ACL GENPASS
ACL GENPASS [bits]
此命令的输出是随机二进制字符串的十六进制表示,该字符串足够“强大”,可用作密码。默认情况下,它发出 256 位(即 64 个十六进制字符)。用户可以提供一个参数,形式为 1 到 1024 之间的位数,以更改输出长度。请注意,提供的位数总是四舍五入到下一个 4 的倍数。因此,例如,只请求 1 位的密码将导致发出 4 位,形式为单个十六进制字符。
Resp 回复
批量字符串回复:伪随机数据。默认情况下,它包含 64 字节,表示 256 位数据。如果给定位数,则输出字符串长度为指定位数(四舍五入到下一个 4 的倍数)除以 4。
ACL LIST
语法
ACL LIST
此命令显示 Garnet 服务器中当前活动的 ACL 规则。
Resp 回复
数组回复:批量字符串回复元素的数组。
ACL LOAD
语法
ACL LOAD
当 Garnet 配置为使用 ACL 文件时,此命令将从文件中重新加载 ACL,用文件中定义的 ACL 替换所有当前的 ACL 规则。此命令确保具有“全有或全无”的行为,即
- 如果文件中的每一行都有效,则加载所有 ACL。
- 如果文件中的一行或多行无效,则不加载任何内容,并且继续使用服务器内存中定义的旧 ACL 规则。
Resp 回复
成功时返回 +OK,否则返回 --ERR 消息(如果有)。
ACL SAVE
语法
ACL SAVE
当 Redis 配置为使用 ACL 文件(通过 aclfile 配置选项)时,此命令将把服务器内存中当前定义的 ACL 保存到 ACL 文件。
Resp 回复
成功时返回 +OK,否则返回 --ERR 消息(如果有)。
ACL SETUSER
语法
ACL SETUSER username [rule [rule ...]]
使用指定规则创建 ACL 用户或修改现有用户的规则。
交互式地操作 Garnet ACL 用户。如果用户名不存在,此命令将创建用户名,不带任何权限。然后,它从左到右读取所有作为连续参数提供的规则,并按指定设置用户 ACL 规则。如果用户已存在,则提供的 ACL 规则仅在已设置的规则之外应用。
Resp 回复
成功时返回 +OK,否则返回 --ERR 消息(如果有)。
ACL USERS
语法
ACL USERS
此命令显示 Garnet ACL 系统中当前配置的所有用户的用户名列表。
Resp 回复
数组回复:现有 ACL 用户列表。
ACL WHOAMI
语法
ACL WHOAMI
返回当前连接所使用的用户名。新连接默认使用“default”用户进行身份验证。它们可以使用 AUTH 更改用户。
Resp 回复
批量字符串回复:当前连接的用户名。