AWS IoT 中的传输安全 - AWS IoT Core

AWS IoT 中的传输安全

AWS IoT 消息代理和 Device Shadow 服务可以使用 TLS 版本 1.2 对传输中的所有通信进行加密。TLS 用于确保受 AWS IoT 支持的应用程序协议(MQTT、HTTP 和 WebSocket)的保密性。TLS 支持适用于许多编程语言和操作系统。AWS内的数据是由特定的AWS服务加密的。有关其它 AWS 服务上的数据加密的更多信息,请参阅该服务的安全文档。

对于 MQTT,TLS 可将设备与代理之间的连接加密。AWS IoT 使用 TLS 客户端身份验证来识别设备。对于 HTTP,TLS 可将设备与代理之间的连接加密。身份验证交由给AWS Signature Version 4 执行。

AWS IoT 要求设备将服务器名称指示 (SNI) 扩展发送到传输层安全性 (TLS) 协议,并在 host_name 字段中提供完整的终端节点地址。host_name 字段必须包含您调用的终端节点,并且必须是:

如果身份验证类型为自定义身份验证,没有正确 host_name 值的设备发起的连接将失败,AWS IoT 会将失败录入 CloudWatch。

AWS IoT 不支持会话票证 TLS 扩展。

LoRaWAN 无线设备的传输安全

LoRaWAN 设备遵循 LoRAWAN™ 安全性:Gemalto、Actility 和 Semtech 为 LoRa Alliance™ 准备的白皮书中所述的安全实践。

有关 LoRaWAN 设备传输安全性的更多信息,请参阅 适用于 LoRaWAN 的 AWS IoT Core 数据安全性

TLS 密码包支持

AWS IoT 支持以下密码包:

  • ECDHE-ECDSA-AES128-GCM-SHA256(推荐)

  • ECDHE-RSA-AES128-GCM-SHA256(推荐)

  • ECDHE-ECDSA-AES128-SHA256

  • ECDHE-RSA-AES128-SHA256

  • ECDHE-ECDSA-AES128-SHA

  • ECDHE-RSA-AES128-SHA

  • ECDHE-ECDSA-AES256- GCM-SHA384

  • ECDHE-RSA-AES256- GCM-SHA384

  • ECDHE-ECDSA-AES256-SHA384

  • ECDHE-RSA-AES256-SHA384

  • ECDHE-RSA-AES256-SHA

  • ECDHE-ECDSA-AES256-SHA

  • AES128-GCM-SHA256

  • AES128-SHA256

  • AES128-SHA

  • AES256-GCM-SHA384

  • AES256-SHA256

  • AES256-SHA