Java を使用して EventProcessorHost で IoT Hub に接続する方法
Java を使用して、Event Hub 用のEventProcessorHost で IoT Hub からデータを受信したい場合に、Event Hub 用の以下のドキュメントのサンプルを、IoT Hub に接続できるよう、接続情報を変更する方法をご紹介いたします。
- Java を使用してAzure Event Hubs からイベントを受信する
< /ja-jp/azure/event-hubs/event-hubs-java-get-started-receive-eph >
上記ドキュメントにおいて、IoT Hub の場合、接続情報を以下のように置き換えていただくことで、IoT Hub に接続できます。
"{説明文}" の部分をそれぞれご自身の環境に合わせて書き換えます。
-----------------
final String namespaceName = "{イベントハブ互換エンドポイントから'Endpoint=sb://' と'.servicebus.windows.net/;' 以降を除いた部分}";
final String eventHubName = "{イベントハブ互換名}";
final String sasKeyName = "{IoT Hub の共有アクセスポリシー名。ここでは iothubowner とします}";
final String sasKey = "{iothubowner の 共有アクセスキー}";
final String storageAccountName = "{ストレージアカウント名}"
final String storageAccountKey = "{ストレージアカウントのキー}";
-----------------
namespaceName と eventHubName については以下をご参考ください。
sasKeyName と sasKey は以下をご参考ください。
[ご参考: IoT Hub の共有アクセス ポリシーについて]
上記の例では共有アクセス ポリシーとして iothubowner を指定していますが、D2C メッセージをイベントハブ互換エンドポイントから読み取るには、 Service Connect (サービス接続) のアクセス許可が必要となります。
- IoT Hub へのアクセスの制御
</ja-jp/azure/iot-hub/iot-hub-devguide-security >
上記の内容がお役に立てば幸いです。
Azure IoT 開発サポートチーム 津田