次の方法で共有


IoT Hub リソースを新しい TLS 証明書ルートに移行する

Azure IoT Hub およびデバイス プロビジョニング サービス (DPS) では、Baltimore CyberTrust Root によって発行された TLS 証明書が使用されており、それが 2025 年に期限切れになります。 2023 年 2 月以降、グローバル Azure クラウド内のすべての IoT ハブは、DigiCert Global Root G2 によって発行された新しい TLS 証明書に移行され始めました。

TLS 証明書の移行が IoT ハブに及ぼす影響は次のとおりです。

  • 証明書ストアに DigiCert Global Root G2 がないデバイスは、Azure に接続できなくなりました。
  • IoT ハブの IP アドレスが変更されました。

タイムライン

2024 年 9 月 30 日の時点で、すべての IoT Hub、IoT Central、Device Provisioning Service のリソースの移行が完了しています。

必要なステップ

移行の一部として、次の手順を実行してください。

  1. DigiCert Global Root G2 と Microsoft RSA Root Certificate Authority 2017 証明書をデバイスに追加します。 これらの証明書は、すべて「Azure 証明機関の詳細」からダウンロードできます。

    DigiCert Global Root G2 により、移行後にデバイスが接続できるようになります。 Microsoft RSA Root Certificate Authority 2017 は、DigiCert Global Root G2 が予期せず廃止された場合に、将来の中断を防ぐのに役立ちます。

    IoT Hub の推奨される証明書のプラクティスの詳細については、TLS のサポートに関する記事を参照してください。

  2. 中間証明書またはリーフ証明書をピン留めしていないこと、パブリック ルートを使用して TLS サーバーの検証を実行していることを確認します。

    IoT Hub と DPS で中間証明機関 (CA) がロール オーバーされることがあります。 そのような場合、デバイスで中間 CA またはリーフ証明書を明示的に検索すると、接続が失われます。 ただし、パブリック ルートを使用して検証を実行するデバイスでは、中間 CA に対して変更があっても、それに関係なく接続が継続されます。

よく寄せられる質問

デバイスで SAS/X.509/TPM 認証を使用しています。 この移行によってデバイスに影響は生じましたか?

TLS 証明書を移行しても、IoT Hub によるデバイスの認証方法には影響しません。 この移行は、デバイスが IoT Hub および DPS エンドポイントを認証する方法に影響します。

IoT Hub と DPS はサーバー証明書をデバイスに提示し、デバイスはエンドポイントへの接続を信頼するためにルートに対してその証明書を認証します。 この移行後にデバイスで確認と Azure への接続を行うことができるように、デバイスの信頼された証明書ストアに新しい DigiCert Global Root G2 が存在する必要があります。

デバイスで Azure IoT SDK を使用して接続しています。 新しい証明書で SDK が機能し続けるためには、何かする必要がありますか?

一概には言えません。

  • はい (Java V1 デバイス クライアントを使用している場合)。 このクライアントは、Baltimore Cybertrust Root 証明書を SDK と共にパッケージ化します。 Java V2 に更新することも、DigiCert Global Root G2 証明書をソース コードに手動で追加することもできます。
  • いいえ (その他の Azure IoT SDK を使用している場合)。 ほとんどの Azure IoT SDK は、TLS ハンドシェイク中にサーバー認証用の信頼されたルートを取得するために、基になるオペレーティング システムの証明書ストアに依存しています。

デバイスでソブリン Azure リージョンに接続しています。 それでも更新する必要がありますか?

いいえ。この変更の影響を受けるのはグローバル Azure クラウドのみです。 ソブリン クラウドは、この移行の対象に含まれていません。

IoT Central を使用しています。 使用しているデバイスを更新する必要はありますか?

はい。IoT Central では、バックエンドで IoT Hub と DPS の両方が使用されます。 TLS の移行はソリューションに影響します。接続を維持するためには、デバイスを更新する必要があります。

デバイスから Baltimore Cybertrust Root を削除できるのは、いつですか?

移行のすべての段階が完了したら、Baltimore ルート証明書を削除できます。 2024 年 9 月 30 日の時点で、Baltimore ルート証明書を使用する Azure IoT リソースはありません。

トラブルシューティング

IoT Hub で一般的な接続の問題が発生している場合は、次のトラブルシューティング リソースを確認してください。

証明書の移行後に Azure Monitor を監視している場合は、次のスクリーンショットに示すように、DeviceDisconnect イベントとそれに続く DeviceConnect イベントを探す必要があります。

DeviceDisconnect イベントと DeviceConnect イベントを示す Azure Monitor ログのスクリーンショット。

移行後にデバイスが切断されても再接続しない場合は、次の手順を試してください。

  • DNS 解決とハンドシェイク要求がエラーなしで完了したことを確認します。

  • デバイスの証明書ストアに DigiCert Global Root G2 証明書と Baltimore 証明書の両方がインストールされていることを確認します。

  • 次の Kusto クエリを使用して、デバイスの接続アクティビティを特定します。 詳細については、「Kusto 照会言語 (KQL) の概要」を参照してください。

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
    | where Category == "Connections"
    | extend parsed_json = parse_json(properties_s)
    | extend SDKVersion = tostring(parsed_json.sdkVersion), DeviceId = tostring(parsed_json.deviceId), Protocol = tostring(parsed_json.protocol)
    | distinct TimeGenerated, OperationName, Level, ResultType, ResultDescription, DeviceId, Protocol, SDKVersion
    
  • Azure portal で、IoT ハブの [メトリック] タブを使用してデバイスの再接続プロセスを追跡します。 この移行が完了する前後でデバイスに変化が見られないことが理想的です。 監視するメトリックの 1 つとしてお勧めなのは [接続デバイス] ですが、積極的に監視する任意のグラフを使用できます。