投稿日: Jul 21, 2022

AWS IoT Device Client は IoT デバイスにコンパイルおよびインストールできる C++ で記述された無料のオープンソースのモジュラーデバイス側のリファレンス実装です。これにより、デバイスデベロッパーはデバイス側は最小限のコードで AWS IoT Core、AWS IoT Device Management、AWS IoT Device Defender 機能にアクセスできます。Device Client は一般的なマイクロプロセッサ (x86_64 および ARM アーキテクチャ) や一般的な Embedded Linux ソフトウェア環境 (Debian、Ubuntu、RHEL など) を備えたデバイスで動作します。

最新バージョンの AWS IoT Device Client (v1.7) がダウンロード可能になりました。この新しいバージョンでは、Secure Elements を使用したプロビジョニング、HTTP プロキシの背後からの AWS IoT への接続、MQTT を介したセンサーデータの公開、IoT Core Named Shadows との互換性の 4 つの新機能をデフォルトで利用できます。

  • まず、AWS IoT Device Client では、PKCS#11 インターフェイスを持つ暗号化ハードウェアをサポートするようになりました。これを使用して、ハードウェアセキュリティモジュール (HSM) やトラステッドセキュリティモジュール (TPM) などの組み込みのセキュアエレメント (SE) が付属する IoT デバイスをプロビジョニングできます。このクライアントは SoftHSM とのリファレンス統合を提供するようになりました。これは、ランタイム時に互換性のある任意の PKCS#11 ライブラリと置き換えらます。
  • 次に、Device Client は HTTP プロキシサーバーの詳細と認証資格情報を指定できるオプションの構成を提供するようになりました。これにより、IoT デバイスはセキュアなネットワークから HTTP Proxy を介して AWS IoT に接続できます。
  • 3 つ目に、Device Client の新機能 Sensor Publish を使って、IoT デバイスにセンサーを接続したり、設定 (サンプリング周波数、送信元 UNIX ドメインソケット、送信先 MQTT トピックなど) を定義したり、任意の MQTT トピックでそのセンサーのデータを AWS IoT Core に直接ストリーミングしたりできるようになりました。
  • 最後に、Device Client の Named Shadows 機能を使って、デバイスのプロパティ、構成、状態をクラウドから報告し、リモートで管理することもできるようになりました。Device Client で提供されるリファレンス実装は、クラウドの AWS IoT Core Named Shadows で動作するように事前に構築されています。

デバイスを使い始めるには、GitHub から AWS IoT Device Client のソースコードをダウンロードしてください。手順を追ったワークショップを利用すると、簡単な PoC (概念実証) を作成し、AWS IoT Device Client を使用した任意の AWS IoT 機能の詳しく見ることができます。AWS で IoT デバイスを接続、管理、または保護するには、AWS IoT マネジメントコンソールにログインするか、CLI を使用してください。AWS IoT Core、AWS IoT Device Management、AWS IoT Device Defender の詳細については、デベロッパーガイドをご覧ください。