デバイスプロビジョニング - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

デバイスプロビジョニング

AWS では、デバイスをプロビジョニングし、一意のクライアント証明書をデバイスにインストールする方法がいくつか用意されています。このセクションでは、各方法と、IoT ソリューションに最適な方法を選択する方法について説明します。これらのオプションについては、「Device Manufacturing and Provisioning with X.509 Certificates in AWS IoT Core」(IoTCore における X.509 証明書を使ったデバイス製造およびプロビジョニング) というタイトルのホワイトペーパーで詳しく説明しています。

状況に最も適したオプションを選択してください
  • 証明書は、配送前に IoT デバイスにインストールできます。

    エンドユーザーによる使用のために配送される前に IoT デバイスに一意のクライアント証明書を安全にインストールできる場合は、ジャストインタイムプロビジョニング (JITP) またはジャストインタイム登録 (JITR) を使用する必要があります。

    JITP と JITR を使用して、デバイス証明書の署名に使用される認証機関 (CA) は AWS IoT に登録され、デバイスが最初に接続したときに AWS IoT によって認識されます。デバイスは、プロビジョニングテンプレートの詳細を使用して、最初の接続で AWS IoT でプロビジョニングされます。

    一意の証明書を持つデバイスの単一のモノ、JITP、JITR、およびバルクプロビジョニングの詳細については、「デバイス証明書があるデバイスのプロビジョニング」を参照してください。

  • エンドユーザーまたはインストーラは、アプリケーションを使用して IoT デバイスに証明書をインストールできます

    エンドユーザーに配信される前に IoT デバイスに一意のクライアント証明書を安全にインストールできないが、エンドユーザーまたはインストーラがアプリケーションを使用してデバイスを登録し、一意のデバイス証明書をインストールできる場合は、信頼できるユーザープロセスによるプロビジョニングを使用する必要があります。

    エンドユーザーや既知のアカウントを持つインストーラなどの信頼できるユーザーを使用すると、デバイスの製造プロセスを簡素化できます。デバイスには、一意のクライアント証明書の代わりに、デバイスが AWS IoT に 5 分間だけ接続できるようにする一時的な証明書があります。この 5 分間で、信頼されたユーザーは有効期限の長い一意のクライアント証明書を取得し、デバイスにインストールします。クレーム証明書には有効期限があるため、証明書のセキュリティが侵害された場合のリスクを最小限は最小限に抑えられます。

    詳細については、「信頼できるユーザーによるプロビジョニング」を参照してください。

  • エンドユーザーは、アプリケーションを使用して IoT デバイスに証明書をインストールすることはできません

    上記のオプションのいずれも IoT ソリューションで機能しない場合は、クレームプロセスによるプロビジョニングを使用します。このプロセスでは、IoT デバイスには、フリート内の他のデバイスによって共有されるクレーム証明書があります。デバイスがクレーム証明書と初めて接続すると、AWS IoT はプロビジョニングテンプレートを使用してデバイスを登録し、デバイスから AWS IoT への以降のアクセス用に一意のクライアント証明書を発行します。

    このオプションを使用すると、デバイスが AWS IoT に接続するときにデバイスの自動プロビジョニングが可能になりますが、クレーム証明書のセキュリティが侵害された場合に大きなリスクが生じる可能性があります。クレーム証明書のセキュリティが侵害された場合は、証明書を無効化できます。クレーム証明書を無効化すると、そのクレーム証明書を持つすべてのデバイスが今後登録されなくなります。ただし、クレーム証明書を無効にしても、既にプロビジョニングされているデバイスはブロックされません。

    詳細については、「クレームによるプロビジョニング」を参照してください。

AWS IoT のデバイスをプロビジョニングする

AWS IoT でデバイスをプロビジョニングする場合、デバイスと AWS IoT が安全に通信できるように、リソースを作成する必要があります。デバイスフリートの管理に役立つその他のリソースを作成できます。プロビジョニングプロセスでは、次のリソースを作成できます。

  • IoT モノ。

    IoT モノは、AWS IoT デバイスレジストリのエントリです。各モノには一意の名前と属性のセットがあり、物理デバイスに関連付けられています。モノはモノの種類を使用して定義することも、モノグループにグループ化することもできます。詳細については、「によるデバイスの管理 AWS IoT」を参照してください。

    必須ではありませんが、モノを作成することで、モノの種類、モノグループ、およびモノ属性でデバイスを検索し、デバイスフリートをより効率的に管理できます。詳細については、「フリートインデックス作成」を参照してください。

    注記

    モノの接続ステータスデータのインデックスを作成するには、モノをプロビジョニングし、モノの名前が Connect リクエストで使用されるクライアント ID と一致するように設定します。

  • X.509 証明書。

    デバイスは X.509 証明書を使用して、AWS IoT との相互認証を実行します。既存の証明書を登録することも、AWS IoT で新しい証明書を生成して登録することもできます。証明書を、デバイスを表すモノにアタッチすることで、デバイスと関連付けることができます。また、証明書および関連付けられたプライベートキーをデバイスにコピーする必要もあります。デバイスでは、AWS IoT への接続時に証明書が提示されます。詳細については、「認証」を参照してください。

  • IoT ポリシー。

    IoT ポリシーは、デバイスが AWS IoT で実行できるオペレーションを定義します。IoT ポリシーはデバイス証明書にアタッチされます。デバイスが AWS IoT に証明書を提示すると、ポリシーで指定されたアクセス許可が付与されます。詳細については、「Authorization」を参照してください。各デバイスには、AWS IoT と通信する証明書が必要です。

AWS IoT は、プロビジョニングテンプレートを使用した自動フリートプロビジョニングをサポートします。プロビジョニングテンプレートは、AWS IoT がデバイスのプロビジョニングに必要なリソースを記述します。テンプレートには、1 つのテンプレートを使用して複数のデバイスをプロビジョニングできる変数が含まれています。デバイスをプロビジョニングするときは、ディクショナリまたはマップを使用して、デバイスに固有の変数の値を指定します。別のデバイスをプロビジョニングするには、ディクショナリに新しい値を指定します。

デバイスに固有の証明書 (および関連するプライベートキー) があるかどうかにかかわらず、自動プロビジョニングを使用できます。

フリートプロビジョニング API

フリートプロビジョニングで使用されるAPIには、いくつかのカテゴリがあります。