ACL 根通
语法
ACL GENPASS [bits]
- 从以下位置开始可用:
- 6.0.0
- 时间复杂度:
- O(1)
- ACL 类别:
-
@slow
,
ACL 用户需要一个可靠的密码才能向服务器进行身份验证,而无需
安全风险。这样的密码不需要人类记住,但是
只能由计算机来猜测,因此它可以非常长且很强(无法通过
外部攻击者)。这ACL GENPASS
命令生成密码,启动
如果可用,则从 /dev/urandom 开始,否则(在没有 /dev/urandom 的系统中)它
使用较弱的系统,这可能仍然比选择较弱的密码更好
手工。
默认情况下(如果 /dev/urandom 可用),密码是强密码,并且
可用于 Redis 应用程序上下文中的其他用途,用于
实例来创建唯一的会话标识符或其他类型的
unguessable 且不冲突的 ID。密码生成也非常便宜
因为我们不会在每次执行时都向 /dev/urandom 请求 bits。在
startup Redis 使用 /dev/urandom 创建一个种子,然后它将使用 SHA256
在 counter 模式下,以 HMAC-SHA256(seed,counter) 作为 primitive,为了
根据需要创建更多 random 字节。这意味着应用程序开发人员
应该随意滥用ACL GENPASS
创建尽可能多的安全
pseudorandom 字符串。
命令输出是二进制字符串的十六进制表示形式。 默认情况下,它发出 256 位(即 64 个十六进制字符)。用户可以提供 一个 number of number of bits 形式的参数,从 1 到 1024 以更改 输出长度。请注意,提供的位数始终为 四舍五入到下一个 4 的倍数。因此,例如,只要求 1 bit password 将导致发出 4 位,以单个 十六进制字符。
例子
> ACL GENPASS
"dd721260bfe1b3d9601e7fbab36de6d04e2e67b0ef1c53de59d45950db0dd3cc"
> ACL GENPASS 32
"355ef3dd"
> ACL GENPASS 5
"90"
RESP2/RESP3 回复
批量字符串回复:伪随机数据。默认情况下,它包含 64 个字节,表示 256 位数据。如果bits
,则输出字符串长度是指定位数(四舍五入到下一个 4 的倍数)除以 4。