是否有一种方法可以限制Redis中由登录名/密码标识的特定客户端的允许命令列表?我想禁止使用KEYS
和SCAN
命令。理想情况下,我将只允许GET
,而不允许其他任何内容,因此客户端将只能访问其知道的密钥。
答案 0 :(得分:4)
在Redis v5之前,没有内置方法可以做到这一点。
从Redis v6(ETA不久(TM);))开始,您将能够使用访问控制列表功能。简而言之,ACL允许用户定义用户及其各自关于执行命令和访问密钥的权限。
例如,要允许用户禁用GET
以外的所有功能,可以执行以下操作:
redis> ACL SETUSER myuser on >password -@all +get
WIP文档当前位于https://redis.io/topics/acl。
答案 1 :(得分:2)
您可以禁用命令,请参见:https://redis.io/topics/security
但是,这将应用于所有客户端。