应用场景

  • 一组 Redis 集群并赋予多个应用使用,需要每个应用限定权限。

  • 需要设置有监控,但为确保数据安全,不宜给全部权限的。

部署方案

  • 配置 requirepass 作为管理员账户使用,拥有全部权限。

  • 添加 write 用户,作为数据操作账户使用, 有读写权限,没有查看和管理服务权限。

  • 添加 read 用户,作为读取数据账户使用,有只读权限和查看槽位权限,没有写权限、查看和管理服务状态权限。

  • 添加 monitor 用户,作为监控服务状态使用,只有查看服务器状态权限,没有调整服务配置以及读写数据权限。

前提条件

  • 已获取管理控制台登录账号和密码,且已获取集群操作权限。

  • 已创建 Redis Standalone 集群,且集群状态为活跃

  • 已在服务器安装 redis-cli 客户端,且服务器与 Redis 之间网络通常。

约束与限制

  • Redis Standalone 6.2.5-v1.0.0 及其以上版本。

操作步骤

  1. 登录管理控制台。

  2. 选择产品与服务 > 数据库与缓存 > 键值数据库 Redis Standalone,进入集群管理页面。

  3. 选择目标集群,点击目标集群 ID,进入集群详情页面。

  4. 点击配置参数页签,进入集群配置参数管理页面。

  5. 点击修改属性,公共参数进入可编辑状态。

  6. 设置 requirepass 密码。

    • 启用 Redis 命令:勾选 CONFIG,方便后续验证。

    • requirepass:修改独立密码,保证后续不能直接登录,避免通过 redis-cli 就可以获取所有管理和读写权限。

    acl config 01
  7. 确认参数信息无误后,点击保存,返回参数列表页面。

  8. 用户管理 ACL 页签,点击添加账号

    • 设置读写数据权限用户

      规则:-@all +@read +@write ~*

      acl config 02
    • 设置只读权限用户

      规则:-@all +@read ~*

      acl config 03
    • 设置只有查看服务状态用户

      规则:-@all +config|get +client|list +client|info +time +role +ping +info

      acl config 04
  9. 查看配置是否正确

    acl config 05
  10. 连接数据库,详细操作请参见连接 Redis (redis-cli 方式)

  11. 测试配置。

    • 测试读写权限权限用户。

      acl config 06
    • 测试只读权限用户。

      acl config 07
    • 测试监控权限用户。

      acl config 08