android - Redis 发布/订阅身份验证

标签 android redis

我需要将实时数据从我的服务器(希望通过 Redis)流式传输到 Android 客户端。我继续开发了一个支持 Redis 发布/订阅模型的服务器,这一切都很好,直到我意识到根据本文档将不受信任的客户端连接到 Redis 是一个很大的“禁忌”https://redis.io/topics/security . (我的错是在开发之前没有做适当的研究)

由于 Redis 几乎没有安全感,我正在努力弄清楚如何将不受信任的客户端连接到我的服务器。我知道还有其他消息代理——比如 RabbitMQ——确实对身份验证和授权有更好的支持。这将是我的后备方案,但我确实想知道是否有办法以安全的方式将不受信任的客户端连接到我的 Redis 服务器?可能通过某种方式代理 Redis?

最佳答案

貌似做不到。 Redis 确实不是为不受信任的客户端使用而设计的。制作一个简单的代理也不是一种选择,因为即使我能够对用户进行身份验证,我也无法应用任何访问控制。导致最终客户端能够将消息发布到我的服务器等...

我最终构建了客户端必须连接到的 SignalR WebSocket 服务器。该服务器将订阅 Redis 上的正确 channel 并充当安全层。

关于android - Redis 发布/订阅身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57042662/

相关文章:

java - 在加载其他 Activity 时显示 ProgressDialog

redis - 解除对 redis 奴隶的奴役

java - 简单的 Android 游戏中 Intent 崩溃

iOS 上的 Android 下载管理器替代品

python - celery 没有看到 redis 代理

ruby - 使用 ruby​​ 的 redis 操作在 ppoll 中阻塞

data-structures - Redis 哈希 : How to Query on both Key and Value

Magento + Redis,完整的 session 目录?

android - 在项目 'mockableAndroidJar' 中找不到名称为 ':app' 的任务

c# - 对前台 Activity 有一个静态引用很好吗?