【问题标题】:Are messages sent to and received from Ably sent securely using TLS?发送到 Ably 和从 Ably 接收的消息是否使用 TLS 安全发送?
【发布时间】:2018-09-23 13:59:22
【问题描述】:
【问题讨论】:
标签:
node.js
security
real-time
ably-realtime
【解决方案1】:
是的,默认情况下,Ably 的所有客户端库在通过 REST 或通过我们的实时传输(例如Websockets)与 Ably 通信时都使用 TLS。用户无需为使用 TLS 付费,而是积极鼓励用户使用 TLS,因为它提供了与Ably 通信的安全传输。
但是,如果您想禁用 TLS(通常是为了减少公共数据流的通信开销),您可以在实例化 Realtime 或 REST 库时在客户端选项中指定 tls: false,请参阅 ClientOptions 文档。请注意,如果满足以下任何条件,则不允许与 Ably 进行未加密的通信:
您尝试使用基本身份验证并因此通过未加密的连接传输私有 API 密钥 - 您只能在令牌过期时使用带有令牌身份验证的未加密连接,从而限制令牌被第三方拦截的影响。
您已在应用设置中指定需要 TLS - 使用未加密连接的客户端尝试附加到配置为仅与 TLS 一起使用的通道。
额外加密
虽然 TLS 加密可确保往返于 Ably 的消息不会被拦截、检查或篡改,但它并不能确保 Ably 服务本身(理论上)无法检查您的消息及其内容。如果您想确保所有消息都经过加密且即使 Ably 也无法访问,请考虑使用我们的客户端库中包含的私钥对称加密。