Share via


Azure Sphere での証明書の使用

このトピックでは、Azure Sphere 証明書 "ランドスケープ" の概要について説明します。さまざまな Azure Sphere コンポーネントで使用される証明書の種類、使用元、格納場所、更新方法、必要に応じてアクセスする方法について説明します。 また、Azure Sphere OS、SDK、およびサービスによって証明書の管理が容易になる方法についても説明します。 証明機関と信頼チェーンに関する基本的な知識があると仮定します。

Azure Sphere デバイス

すべての Azure Sphere デバイスは、Azure Sphere OS の一部である信頼されたルート ストアに依存しています。 信頼されたルート ストアには、デバイスがデバイス認証と構成証明 (DAA)、Over-the-air (OTA) 更新プログラム、またはエラー 報告のために接続するときに Azure Sphere Security Service の ID を検証するために使用されるルート証明書の一覧が含まれています。 これらの証明書は OS で提供されます。

毎日の構成証明が成功すると、デバイスは更新証明書と顧客証明書の 2 つの証明書を受け取ります。 更新証明書を使用すると、デバイスは Azure Sphere Update Service に接続してソフトウェア更新プログラムを取得し、エラー レポートをアップロードできます。アプリケーションやコマンド ラインからはアクセスできません。 DAA 証明書とも呼ばれる顧客証明書は、アプリケーションによって、トランスポート層セキュリティ (TLS) を使用する wolfSSL などのサード パーティのサービスに接続するために使用できます。 この証明書は 24 時間有効です。 アプリケーションは、 DeviceAuth_GetCertificatePath関数を呼び出すことによってプログラムで取得できます。

Azure IoT Hub、Azure IoT Central、Azure IoT Edge などの Azure ベースのサービスに接続するデバイスは、Azure Sphere カタログを認証するために Azure Sphere カタログ CA 証明書提示する必要があります。 CLI の az sphere ca-certificate download コマンドは、そのような用途のためにカタログ CA 証明書を返します。

EAP-TLS ネットワーク接続

EAP-TLS ネットワークに接続するデバイスでは、ネットワークの RADIUS サーバーで認証するための証明書が必要です。 クライアントとして認証するには、デバイスがクライアント証明書を RADIUS に渡す必要があります。 相互認証を実行するには、デバイスがサーバーを認証できるように、RADIUS サーバーのルート CA 証明書も必要です。 Microsoft では、これらの証明書のいずれも提供していません。お客様またはネットワーク管理者は、ネットワークの RADIUS サーバーの正しい証明機関を確認し、発行者から必要な証明書を取得する責任を負います。

RADIUS サーバーの証明書を取得するには、証明機関に対して認証を行う必要があります。 前に説明したように、この目的で DAA 証明書を使用できます。 RADIUS サーバーの証明書を取得したら、それらをデバイス証明書ストアに格納する必要があります。 デバイス証明書ストアは、EAP-TLS を使用したセキュリティで保護されたネットワークへの認証でのみ使用できます。 (DAA 証明書はデバイス証明書ストアに保持されません。OS に安全に保持されます)。CLI の az sphere device certificate コマンドを使用すると、コマンド ラインから証明書ストアを管理できます。 Azure Sphere アプリケーションでは、 CertStore API を使用して、デバイス証明書ストアに証明書を格納、取得、管理できます。 CertStore API には、アプリが証明書の有効期限と更新を準備できるように、個々の証明書に関する情報を返す関数も含まれています。

詳細については、「EAP-TLS ネットワークで使用される証明書の詳細については EAP-TLS を使用する」を参照し、Microsoft Tech Communityの「Secure enterprise Wi-Fi access: EAP-TLS on Azure Sphere」を参照してください。

Azure Sphere アプリケーション

Azure Sphere アプリケーションでは、Web サービスと一部のネットワークに対して認証するための証明書が必要です。 サービスまたはエンドポイントの要件に応じて、アプリは DAA 証明書または外部証明機関からの証明書を使用できます。

wolfSSL または同様のライブラリを使用してサード パーティのサービスに接続するアプリは 、DeviceAuth_GetCertificatePath 関数を呼び出して認証用の DAA 証明書を取得できます。 この関数は、20.10 SDK の deviceauth.h ヘッダーで導入されました。

Azure Sphere に組み込まれている Azure IoT ライブラリでは、必要なルート CA が既に信頼されているため、このライブラリを使用して Azure IoT サービス (Azure IoT Hub、Azure IoT Central、デバイス プロビジョニング サービス) にアクセスするアプリでは、追加の証明書は必要ありません。

アプリで他の Azure サービスを使用する場合は、それらのサービスのドキュメントをチェックして、必要な証明書を決定します。

Azure Sphere REST API

Azure Sphere REST API は、カタログ、製品、デプロイ、デバイス グループなどの Azure Sphere リソースを作成および管理するための HTTP 操作をサポートする一連のサービス エンドポイントです。 Azure Sphere REST API は、REST (REpresentational State Transfer) HTTP プロトコルを使用して、操作の要求と応答を送信します。 操作応答で返されるデータは JSON (JavaScript オブジェクト表記) で書式設定されます。 使用可能な操作については、「 Azure Sphere REST API リファレンス」を参照してください

Azure Sphere Security Service

Azure Sphere クラウド サービス全般とセキュリティ サービスは、特に、セキュリティで保護されたサービス間通信で使用される多数の証明書を管理します。 これらの証明書のほとんどはサービスとそのクライアントの内部であるため、Microsoft は必要に応じて更新プログラムを調整します。 たとえば、10 月のパブリック API TLS 証明書の更新に加えて、Azure Sphere Security Service は DAA サービスと Update サービスの TLS 証明書も更新しました。 更新前に、デバイスは、新しい必要なルート証明書を含む信頼されたルート ストアに対する OTA 更新プログラムを受け取いました。 Security Service とのデバイス通信を維持するために、お客様の操作は必要ありませんでした。

Azure Sphere を使用すると、顧客の証明書の変更はどのように簡単になりますか?

証明書の有効期限は、Azure Sphere で防止できる IoT デバイスのエラーの 一般的な原因です。

Azure Sphere 製品には OS とセキュリティ サービスの両方が含まれているため、これらの両方のコンポーネントで使用される証明書は Microsoft によって管理されます。 デバイスは、DAA プロセス、OS とアプリケーションの更新、およびアプリケーションの変更を必要とせずにエラー 報告を通じて更新された証明書を受け取ります。 Microsoft が DigiCert Global Root G2 証明書を追加したとき、DAA、更新プログラム、またはエラー報告を続行するために顧客の変更は必要ありませんでした。 更新時にオフラインだったデバイスは、インターネットに再接続するとすぐに更新プログラムを受信しました。

Azure Sphere OS には Azure IoT ライブラリも含まれているため、Microsoft が Azure IoT ライブラリで使用する証明書にさらに変更を加えた場合は、アプリケーションを変更する必要がないように OS 内のライブラリを更新します。 また、アプリやスクリプトを変更する必要があるエッジ ケースや特別な状況に関する追加のブログ投稿もお知らせします。

どちらの場合も、Azure Sphere が証明書の変更を処理するためのアプリケーションのメンテナンス更新の必要性を取り除くことによって、アプリケーション管理を簡略化する方法を示します。 すべてのデバイスは、毎日の構成証明の一部として更新証明書を受け取るため、デバイスとアプリケーションが使用するローカルで管理されている証明書の更新を簡単に管理できます。 たとえば、アプリケーションが基幹業務サーバーの ID を検証する場合 (必要に応じて)、更新された証明書を含む更新されたアプリケーション イメージ パッケージをデプロイできます。 Azure Sphere プラットフォームによって提供されるアプリケーション更新サービスは、これらの更新プログラムを提供し、更新サービス自体に証明書の有効期限の問題が発生するという心配を取り除きます。

詳細については、

Azure Sphere デバイス認証と構成証明サービス

Azure Sphere のその他の証明書更新プログラム

Azure TLS 証明書の変更

Azure IoT TLS: 変更が行われます。 (...とあなたが気にする必要がある理由)