redis - 如何使用 acl 限制对 redis pubsub 中某些主题的访问?
问题描述
我希望某些客户端无法订阅 Redis pubsub 中的某些主题。redis acl可以吗?
解决方案
是的,这就是您可以使用 ACL 将客户端仅限于“foo”主题的方式:
$ redis-cli
127.0.0.1:6379> ACL SETUSER limitedpubsub on nopass -@all +subscribe|foo
OK
127.0.0.1:6379> AUTH limitedpubsub ""
OK
127.0.0.1:6379> SUBSCRIBE bar
Reading messages... (press Ctrl-C to quit)
(error) NOPERM this user has no permissions to run the 'subscribe' command or its subcommand
^C
$ redis-cli
127.0.0.1:6379> AUTH limitedpubsub ""
OK
127.0.0.1:6379> SUBSCRIBE foo
Reading messages... (press Ctrl-C to quit)
1) "subscribe"
2) "foo"
3) (integer) 1
推荐阅读
- php - laravel 5.8 在 ajax 请求上响应 500 内部服务器错误
- javascript - `leftJoin()` 不使用 Knex.js 返回带有 Objection ORM 的连接表数据
- python - 我可以通过在 python 中的查询将数据库表与 Excel 文件连接起来吗?
- python - PyCharm:运行脚本时激活 venv
- python - 如何设置记录器对象的记录级别?
- r - 将函数应用于数据框的某些列,同时将结果存储在原始数据框中
- jquery - Jquery TR 可排序,用于单独的手风琴
- c# - 如何使用 C# 网络服务?
- forms - 为什么“toFillForm”在 jest-puppeteer 中不起作用?
- kubernetes - Kubernetes 主节点未接收到内部 IP