View a markdown version of this page

WiFi Simple Setup のプロビジョニング先を設定する - のマネージド統合 AWS IoT Device Management

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

WiFi Simple Setup のプロビジョニング先を設定する

このページ:

プロビジョンド要件

WiFi Simple Setup をサポートするには、プロビジョンドデバイスがこれらの要件を満たしている必要があります。

ハードウェアとセキュリティ

  • マネージド統合 ビルドフラグIOTMI_USE_WSS_PROVISIONEEを有効にして終了デバイス SDK 統合が完了しました

  • 安全なストレージのためのハードウェアセキュリティモジュール (HSM) またはトラステッドプラットフォームモジュール (TPM)

  • WiFi 接続機能

  • 暗号化オペレーションに十分な処理能力 (SHA-384、HKDF)

認証マテリアル

  • HSM/TPM に安全に保存されている証明書とプライベートキーを要求する

  • 一意のシリアル番号 (SN): 12~50 文字の英数字

  • ユニバーサル製品コード (UPC): 12 桁または欧州商品番号 (EAN): 13 桁

  • SN と UPC/EAN を表示するバーコードラベル (デバイスまたはパッケージ上)

注記

EAN サポート: プロビジョニングは現在 UPC のみをサポートしています。EAN サポートは今後のリリースで予定されています。プロビジョニング者は UPC と EAN の両方をサポートします。

重要: UPC/EAN とペアリングされた SN は、お客様の AWS アカウント内のマネージドモノごとに一意である必要があります。

ソフトウェアコンポーネント

  • PKCS#11 API を HSM/TPM に接続する corePKCS11 プラットフォーム抽象化レイヤー (PAL) 実装

  • 事前共有キー (PSK) 機能を備えた TLS 1.2/1.3 クライアント (ポート 4433、暗号スイート: TLS_AES_256_GCM_SHA384 または同等のもの)

  • SOCKS5 プロキシクライアントのサポート (ポート 1080)

  • SHA-384 および HKDF の暗号化関数

注: corePKCS11 PAL は、ソフトウェアのみの実装ではなく、実際の HSM/TPM ハードウェアとインターフェイスする必要があります。

製造要件

デバイスメーカーは、製造中に安全なマテリアルと識別子をプロビジョニングする必要があります。

安全なマテリアルプロビジョニング

クレーム証明書とプライベートキー:

  • 製造プロセス中に生成する

  • HSM または TPM に保存する (本番稼働用デバイスに必要)

  • プライベートキーを安全なストレージの外部に公開しない

  • corePKCS11 PAL インターフェイスを介したアクセス

デバイス識別子:

  • シリアル番号 (SN): 12~50 文字の一意の識別子

  • ユニバーサル製品コード (UPC): 12 桁の製品コードまたは欧州商品番号 (EAN): 13 桁の製品コード

  • HSM/TPM のクレーム証明書と一緒に安全に保存する

バーコードの要件

物理ラベルには以下を含める必要があります。

  • デバイスまたはパッケージの SN バーコード (Code 128 形式を推奨)

  • デバイスまたはパッケージングの UPC/EAN バーコード (UPC-A または EAN-13 形式)

  • 簡単にスキャンできるラベル (照明が明るく、焦点が絞られ、遮られていない)

  • 配送と処理後も存続するラベル

フリートプロビジョニングの設定

AWS アカウント設定:

  1. GetCustomEndpoint API を使用してカスタムエンドポイントを作成する

  2. CreateProvisioningProfile API を使用してプロビジョニングプロファイルを作成する

  3. デバイスファミリーのクレーム証明書とプライベートキーを取得する

  4. 必須フィールドを使用してフリートプロビジョニングテンプレートを設定します。

    • deviceSerialNumber (SN)

    • universalProductCode (UPC) または europeanArticleNumber (EAN)

    • デバイス証明書生成のサポート

    • AWS IoT Core でのモノの登録

プロビジョニング先機能を有効にする

アカウントのリンク中に CreateManagedThing API を使用してデバイスの WSS を有効にします。

デバイス登録

{ "role": "DEVICE", "credentialLockerId": "ad5cdc9f786b4dbe9490e57c0b1d900e", "authenticationMaterialType": "WIFI_SETUP_QR_BAR_CODE", "authenticationMaterial": "SN:123456789331;UPC:123456789331", "wiFiSimpleSetupConfiguration": { "enableAsProvisionee": true, "timeoutInMinutes": 15 } }

パラメータ :

  • role: プロビジョニング先デバイスの「DEVICE」である必要があります

  • credentialLockerId: デバイスを世帯に関連付ける (プロビジョナーと同じ)

  • authenticationMaterialType: WSS に「WIFI_SETUP_QR_BAR_CODE」を使用する

  • authenticationMaterial: デバイスバーコードからの SN および UPC/EAN

  • enableAsProvisionee: WSS をアクティブ化するには true に設定します

  • timeoutInMinutes: アクティベーションウィンドウの期間 (5~15 分、デフォルトは 15)

再試行または再アクティブ化

UpdateManagedThing を使用して、最初の失敗後に再試行します。

{ "managedThingId": "existing-device-id", "wiFiSimpleSetupConfiguration": { "enableAsProvisionee": true, "timeoutInMinutes": 15 } }

バーコードスキャンワークフロー

バーコードスキャンからデバイスのアクティベーションまでend-to-endのワークフローを完了します。

ステップ 1: 準備

  • モバイルアプリケーションがインストールされ、認証されていることを確認する

  • プロビジョナーデバイス (ハブ) の電源が入っていて接続されていることを確認します。

  • デバイスとパッケージをスキャン可能にする

ステップ 2: スキャンして登録する

  1. モバイルアプリケーションを開き、デバイス設定に移動する

  2. デバイスシリアル番号 (SN) バーコードのスキャン

  3. ユニバーサル製品コード (UPC) または欧州商品番号 (EAN) バーコードのスキャン

  4. モバイルアプリがスキャンしたデータを検証する

  5. モバイルアプリがスキャンデータと WSS 設定を使用して CreateManagedThing API を呼び出す

重要

単一のプロビジョニング先オンボーディングの制限: 一度にオンボーディングできるプロビジョニング先は 1 人のみです。複数のデバイスを同時にスキャンすると、最新のスキャン済みデバイスのみがオンボードされます。以前にスキャンされたがアクティブ化されていないデバイスをオンボードするには、 UpdateManagedThingを実行してセットアップウィンドウを再アクティブ化する必要があります。

ステップ 3: クラウドのアクティベーション

クラウド処理は自動的に次のようになります。

  1. WSS 設定を使用してマネージドモノのレコードを作成します

  2. 15 分間のセットアップウィンドウをアクティブ化します

  3. 対象となるプロビジョナー (同じ認証情報ロッカー、enableAsProvisioner=true、supportAsProvisioner=true) を識別します

  4. すべての適格なプロビジョナーにプロビジョニング通知を送信します

  5. プロビジョナーSoftAPs を作成し、デバイス接続を準備する

GetManagedThing レスポンスの例:

{ "managedThingId": "device-id", "role": "DEVICE", "credentialLockerId": "ad5cdc9f786b4dbe9490e57c0b1d900e", "authenticationMaterialType": "WIFI_SETUP_QR_BAR_CODE", "authenticationMaterial": "SN:123456789331;UPC:123456789331", "wiFiSimpleSetupConfiguration": { "enableAsProvisioner": false, "supportAsProvisioner": false, "enableAsProvisionee": true, "wssExpirationTimeStamp": "2025-06-04T20:22:04.069610Z" } }

キーフィールド:

  • enableAsProvisionee: WSS プロビジョニング用に設定されたデバイス

  • wssExpirationTimeStamp: アクティブセットアップウィンドウの終了時刻 (期限切れの場合は null)

ステップ 4: デバイスの電源をオンにする

  1. モバイルアプリに「デバイスの電源を入れる」というメッセージが表示されます

  2. プロビジョンドデバイスのユーザーパワー

  3. WSS ワークフローは自動的に続行されます。

    • デバイスがプロビジョナー SoftAP を検出する

    • 認証と認証情報の交換が完了しました

    • デバイスが WiFi に接続する

    • モバイルアプリが成功通知を受け取る

アクティベーションウィンドウとタイムアウト

WSS は、時間制限付きのウィンドウとオペレーションタイムアウトを使用してセキュリティを強化し、プロビジョニングを管理します。

アクティベーションウィンドウ

デフォルト: バーコードスキャンからデバイスのアクティベーションまで 15 分

設定:

  • timeoutInMinutes パラメータで設定 (範囲: 5~15 分)

  • デフォルト: 15 分で利便性とセキュリティのバランスが取れます

有効期限の動作:

  • プロビジョニング者はタイムアウト後に許可リストからデバイスを削除します

  • 有効期限が切れた後、デバイスは WSS 経由で接続できません

  • ユーザーはバーコードを再スキャンするか、UpdateManagedThing を呼び出して再アクティブ化する必要があります

オペレーションタイムアウト

WSS オペレーションのタイムアウト
運用 タイムアウト 動作
SoftAP 検出 30 秒 最大 5 回再試行し、ユーザーガイドのセットアップに戻る
フリートのプロビジョニング 30 秒 が失敗した場合、エクスポネンシャルバックオフで再試行する
WiFi 接続 60 秒 エラーを報告し、 が失敗した場合のトラブルシューティングを提案する

ベストプラクティス

  • バーコードスキャンから 5 分以内にデバイスの電源を入れ、プロビジョナーのソフトタップ WiFi 範囲の近くに配置します。

  • スキャンする前に、プロビジョナーの電源が入っていて接続されていることを確認します。

  • 特定の要件で特に明記されていない限り、デフォルトの 15 分のタイムアウトを使用する

WSS 設定を再試行する

最初の WSS 設定が失敗した場合、UpdateManagedThing API を使用して再試行します。

ワークフローを再試行する

ステップ 1: 失敗を特定する

  • モバイルアプリが WSS 失敗通知を受け取る

  • アクティベーションに成功せずにタイムアウトが期限切れになる

  • ユーザーに「セットアップに失敗しました」または「再試行」というメッセージが表示されます

ステップ 2: UpdateManagedThing を使用して再試行する

{ "managedThingId": "device-managed-thing-id", "wiFiSimpleSetupConfiguration": { "enableAsProvisionee": true, "timeoutInMinutes": 15 } }

ステップ 3: 再アクティブ化

  • クラウドが 15 分間のセットアップウィンドウを再アクティブ化

  • プロビジョナーが SoftAP と許可リストエントリを再作成する

  • ユーザーの電源がオンになっている (まだオンになっていない場合)

  • WSS ワークフローの続行

一般的な再試行シナリオ

WSS 再試行シナリオ
シナリオ ソリューション
デバイスが時間内に電源を入れられていない UpdateManagedThing を呼び出してデバイスをオンにする
プロビジョナーを使用できません ハブをオンラインにして再試行する
ネットワーク接続の問題 ネットワークが安定していることを確認してから再試行する
ユーザーエラー 正しいデバイスで再試行する

重要: UpdateManagedThing 呼び出しごとに新しい 15 分のウィンドウが作成されます。3~4 回障害が発生した場合は、プロビジョナーのステータスの確認、デバイスの機能の検証、またはユーザーガイドのセットアップの使用を検討してください。

プロビジョニング先機能を無効化する

プロビジョニング先デバイスの WSS を無効化または削除します。

UpdateManagedThing API の使用

{ "managedThingId": "device-managed-thing-id", "wiFiSimpleSetupConfiguration": { "enableAsProvisionee": false } }

DeleteManagedThing API の使用

{ "managedThingId": "device-managed-thing-id" }

比較

無効化と削除の比較
アクション UpdateManagedThing DeleteManagedThing
デバイスレコード クラウドに保持される 完全に削除
デバイスのステータス 無効に変更 存在しなくなった
再アクティブ化 いつでも WSS を再度有効にする デバイスを再登録する必要があります
ユースケース 一時的な無効化、テスト デバイスの廃止、セキュリティインシデント

セキュリティに関する考慮事項

次の場合は disable/delete を使用します。

  • 疑わしいアクティビティが検出されました

  • デバイスが盗まれたと報告されました

  • セキュリティインシデント調査が必要

  • デバイスの廃止または返却

を無効化/削除したら、次の点を考慮してください。

  • 認証情報が侵害された可能性がある場合の WiFi パスワードの変更

  • 異常なアクティビティに関するセキュリティ通知の確認

  • 同様の問題がないか、家庭内の他のデバイスをチェックする