用户管理
实施正确的身份验证和访问控制对于保护 Redis 环境至关重要。本节介绍 Redis 实例的密码管理和基于角色的访问控制配置。
Redis 6.0 及更高版本实现了全面的 Access Control List (ACL) 系统,支持多个具有细粒度权限的用户。Redis 6.0+ 为了与旧版客户端保持向后兼容,会保留默认用户。
查看用户
以下方法可用于查看与 Redis 实例关联的所有用户。
Redis 实例(6.0+ 版本)使用 RedisUser Custom Resource (CR) 来管理用户账户。要列出与特定实例关联的所有用户:
例如,要列出名为 s6 的实例的所有用户:
输出字段提供以下信息:
每个 Redis 实例都包含一个内置的 operator 用户,该用户会在实例创建期间自动配置。此系统账户具有全面权限(包括用户管理能力),并使用复杂的 64 字符密码进行保护。
此账户仅保留用于系统操作,绝不应用于应用访问。对该账户配置的任何修改都可能导致实例严重不稳定,并可能引发无法恢复的故障状态。
更新密码
以下操作步骤可用于更新用户密码,以增强安全性。建议定期轮换密码,作为安全最佳实践。
操作步骤
-
从 RedisUser 列表中确定目标用户。
在本示例中,我们将更新实例
s6的default用户密码。 -
获取 RedisUser 资源,以确定关联的密码 Secret:
从
spec.passwordSecrets[0]字段可以看出,密码存储在 Secretredis-s6-2hqxb中。 -
查看当前密码 Secret:
注意:
password键是 Redis Operator 使用的保留字段名称,其值以 base64 编码字符串形式存储。 -
使用新密码更新 Secret:
-
验证密码更新:
更新密码后,RedisUser 资源会暂时进入
Pending状态,待更改传播到所有 Redis 节点后,状态将恢复为Success。
更新权限
Redis 6.0+ 通过其 ACL 系统支持细粒度访问控制。平台为常见使用场景提供了预定义的权限配置文件:
对于高级场景,还支持自定义 ACL 规则。有关详细语法和功能,请参阅 Redis ACL 文档。
注意:所有权限配置文件,包括自定义配置文件,都会显式撤销 ACL 管理权限。用户修改必须通过平台的用户管理界面执行。
操作步骤
创建成功后,用户会随机进入 Pending 状态。请等待其变更为 Success 状态,这表示更新已成功完成。
创建用户
操作步骤
为 Redis 集群模式实例创建用户。