例子 :
rediss://:password<strong i="6">@rediss</strong>:6400/1?rejectUnauthorized=false
https://www.iana.org/assignments/uri-schemes/prov/redis
显然是通过类比 HTTPS (RFC 2818) 来命名的,rediss: URI 方案(是的,两个“s”,
不是错字)已被一些客户用来指定 RESP over TLS。
除了使用 TLS 之外,rediss: URI 方案未知
与 redis: URI 方案有任何区别。
我反对添加这个。 原因是不可能在 url 中添加所有tls
选项。 因此,在大多数情况下,无论如何都必须将更多选项传递给客户端。 也很难将tls
选项与常规选项区分开来。 感谢您让我注意到这一点!
例如 Mongodb 管理它... https://docs.mongodb.com/manual/reference/connection-string/
此外,考虑到您已经接受不通过 url 涵盖所有选项的事实,我不认为不添加更多支持的意义。
我不明白为什么有必要“添加带有 url 的所有 tls 选项”。 从操作的角度来看,只为连接启用 TLS 加密就足够了 - 建立信任关系应该由操作系统处理(安装根/中间证书颁发机构;请参阅 Linux 上的 /etc/ssl)。 我真的不想为了“只启用 TLS”而深入研究每种编程语言的设置。 它基本上应该是一个是/否的事情。 这就是redis uri 方案提供的。
其他客户端库(其他语言)已经支持这一点:
由于不提供此功能,因此有必要为 node.js 保留单独的配置。
似乎对此功能有足够的兴趣让我重新考虑这一点。
是否计划很快发布此功能的 NPM 版本? 2.8.0 是最新的,没有这个功能。
一个较小的形式呢,它可以在不扩展格式的情况下从 URL 设置默认 tls 选项? 例如,将servername
设置hostname
部分可能是相当安全的做法。
我不知道其他人,但我知道至少compose.io 使用 SNI for Redis over SSL 。
这是通过https://github.com/NodeRedis/node_redis/pull/1282部分解决的
@BridgeAR它仍未发布,是否有希望尽快发布?
我刚刚向 NPM 发布了 v3.0.0; https://github.com/NodeRedis/node-redis/releases/tag/v3.0.0 - 其中包括@calebboyd提到的更改,现在可以关闭此问题吗?
最有用的评论
似乎对此功能有足够的兴趣让我重新考虑这一点。