ACL 获取用户
Syntax
ACL GETUSER username
- Available since:
- 6.0.0
- Time complexity:
- O(N). Where N is the number of password, command and pattern rules that the user has.
- ACL categories:
-
@admin
,@slow
,@dangerous
,
该命令返回为现有ACL用户定义的所有规则。
具体来说,它列出了用户的ACL标志、密码哈希、命令、键模式、通道模式(在6.2版本中添加)和选择器(在7.0版本中添加)。 如果将来向用户添加更多元数据,可能会返回更多信息。
命令规则总是以与ACL SETUSER
命令中使用的格式相同的格式返回。
在7.0版本之前,键和通道作为模式数组返回,但在7.0版本及以后,它们现在也以与ACL SETUSER
命令中使用的格式相同的格式返回。
注意:此命令规则的描述反映了用户的有效权限,因此虽然它可能与用于配置用户的规则集不完全相同,但在功能上仍然是相同的。
选择器按照它们应用于用户的顺序列出,并包括有关命令、键模式和通道模式的信息。
示例
这是一个用户的示例配置
> ACL SETUSER sample on nopass +GET allkeys &* (+SET ~key2)
"OK"
> ACL GETUSER sample
1) "flags"
2) 1) "on"
2) "allkeys"
3) "nopass"
3) "passwords"
4) (empty array)
5) "commands"
6) "+@all"
7) "keys"
8) "~*"
9) "channels"
10) "&*"
11) "selectors"
12) 1) 1) "commands"
6) "+SET"
7) "keys"
8) "~key2"
9) "channels"
10) "&*"
RESP2 回复
以下之一:
- Array reply: 用户的ACL规则定义列表。
- Nil reply: 如果用户不存在。
RESP3 回复
以下之一:
- Map reply: 用户的一组ACL规则定义
- Null reply: 如果用户不存在。
历史
- 从 Redis 6.2.0 版本开始:添加了 Pub/Sub 通道模式。
- 从Redis版本7.0.0开始:添加了选择器,并将键和通道模式的格式从列表更改为它们的规则表示。