AWS IoT でのトランスポートセキュリティ - AWS IoT Core

AWS IoT でのトランスポートセキュリティ

AWS IoT メッセージブローカーとデバイスシャドウサービスでは、TLS バージョン 1.2 を使用して、転送中のすべての通信は暗号化されます。TLS は、AWS IoT でサポートされているアプリケーションプロトコル (MQTT、HTTP、および WebSocket) の機密性を確保するために使用されます。TLS サポートは、多くのプログラミング言語とオペレーティングシステムで使用できます。AWS 内のデータは、特定の AWS のサービスによって暗号化されます。他の AWS のサービスのデータ暗号化の詳細については、そのサービスのセキュリティドキュメントを参照してください。

MQTT 用に、TLS はデバイスとブローカーとの間の接続を暗号化します。TLS クライアント認証は、AWS IoT によってデバイスの識別に使用されます。HTTP 用に、TLS はデバイスとブローカーとの間の接続を暗号化します。認証は AWS 署名バージョン 4 に委任されます。

AWS IoT では、デバイスが Server Name Indication (SNI) 拡張を Transport Layer Security (TLS) に送信し、host_name フィールドに完全なエンドポイントアドレスを指定する必要があります。host_name フィールドには、呼び出すエンドポイントが含まれている必要があります。次のようになる必要があります。

  • endpointAddress によって返される aws iot describe-endpoint --endpoint-type iot:Data-ATS

    または

  • domainName によって返される aws iot describe-domain-configuration –-domain-configuration-name "domain_configuration_name"

正しい host_name 値を持たないデバイスによって試行された接続は拒否され、CloudWatch にログインします。

AWS IoT は SessionTicket TLS 拡張をサポートしていません。

LoRaWAN ワイヤレスデバイスのトランスポートセキュリティ

LoRaWAN デバイスは、LoRaWAN ™ SECURITY: Gemalto、Actility、および Semtech による LoRa Alliance™ 向けに作成されたホワイトペーパーで説明されているセキュリティ プラクティスに従います。

LoRaWAN デバイスのトランスポートセキュリティの詳細については、 AWS IoT Core for LoRaWAN によるデータセキュリティ を参照してください。

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