ACL

Redis ACL是Access Control List(访问控制列表)的缩写,该功能允许根据可以执行的命令和可以访问的键来限制某些连接

  1. //展现用户权限列表
  2. acl list
  3. //查看添加权限指令类别
  4. acl cat
  5. acl cat String
  6. 注:加参数类型名可以查看类型下具体命令
  7. //查看当前用户
  8. acl whoami
  9. //切换用户
  10. auth username password

image.png

使用aclsetuser命令创建和编辑用户ACL

  1. //创建新用户默认权限
  2. acl setuser user1
  3. //设置有用户名、密码、ACL权限、并启用的用户
  4. acl setuser user2 on >password ~cached:* +get
ACL规则
类型 参数 说明
启动和禁用用户 on 激活某用户账号
off 禁用某用户账号。注意,已验证的连接仍然可以工作。如果默认用户被标记为off,则新连接将在未进行身份验证的情况下启动,并要求用户使用AUTH选项发送AUTH或HELLO,以便以某种方式进行身份验证。
权限的添加删除 + 将指令添加到用户可以调用的指令列表中
- 从用户可执行指令列表移除指令
+@ 添加该类别中用户要调用的所有指令,有效类别为@admin、@set、@sortedset…等,通过调用ACL CAT命令查看完整列表。特殊类别@all表示所有命令,包括当前存在于服务器中的命令,以及将来将通过模块加载的命令。
-@ 从用户可调用指令中移除类别
allcommands +@all的别名
nocommand -@all的别名
可操作键的添加或删除 ~ 添加可作为用户可操作的键的模式。例如~*允许所有的键