

# プロビジョニング用のデバイス JSON ファイルを取得する
<a name="sidewalk-json-get"></a>

Sidewalk デバイスを AWS IoT Core for Amazon Sidewalk に追加したら、エンドデバイスのプロビジョニングに必要な情報を含む JSON ファイルをダウンロードします。この情報は、AWS IoT コンソールまたは AWS CLI を使用して取得できます。デバイスのプロビジョニング方法の詳細については、「Amazon Sidewalk ドキュメント」の「[エンドデバイスのプロビジョニングと登録](https://docs.sidewalk.amazon/provisioning/)」を参照してください。

## JSON ファイルを取得する (コンソール)
<a name="iot-sidewalk-json-get-console"></a>

Sidewalk デバイスをプロビジョニングするための JSON ファイルを取得するには:

1. [Sidewalk デバイスハブ](https://console.aws.amazon.com/iot/home#/wireless/devices?tab=sidewalk)に移動します。

1. AWS IoT Core for Amazon Sidewalk に追加したデバイスを選択して詳細を表示します。

1. 追加したデバイスの詳細ページで **[デバイスの JSON ファイルをダウンロード]** を選択して JSON ファイルを取得します。

   エンドデバイスのプロビジョニングに必要な情報を含む `certificate.json` ファイルをダウンロードします。以下は JSON ファイルのサンプルです。これには、デバイス証明書、プライベートキー、Sidewalk 製造シリアル番号 (SMSN)、および `DeviceTypeID` が含まれています。

   ```
   {
     "p256R1": "grg8izXoVvQ86cPVm0GMyWuZYHEBbbH ... DANKkOKoNT3bUGz+/f/pyTE+xMRdIUBZ1Bw==",
     "eD25519": "grg8izXoVvQ86cPVm0GMyWuZYHEBbbHD ... UiZmntHiUr1GfkTOFMYqRB+Aw==",
     "metadata": {    
       "devicetypeid": "fe98",
       "applicationDeviceArn": "arn:aws:iotwireless:us-east-1:123456789012:WirelessDevice/897ce68e-3ca2-4ed0-85a2-30b0666c4052",
       "applicationDeviceId": "897ce68e-3ca2-4ed0-85a2-30b0666c4052",
       "smsn": "82B83C8B35E856F43CE9C3D59B418CC96B996071016DB1C3BE5901F0F3071A4A",
       "devicePrivKeyP256R1": "3e704bf8d319b3a475179f1d68c60737b28c708f845d0198f2d00d00c88ee018",
       "devicePrivKeyEd25519": "17dacb3a46ad9a42d5c520ca5f47f0167f59ce54d740aa13918465faf533b8d0"
     },
     "applicationServerPublicKey": "5ce29b89c2e3ce6183b41e75fe54e45f61b8bb320efbdd2abd7aefa5957a316b"
   }
   ```

Sidewalk デバイスの詳細ページには、次の情報も表示されます。
+ デバイス ID、Amazon リソースネーム (ARN)、および送信先の AWS IoT Amazon リソースネーム (ARN)、および送信先の情報。
+ デバイスプロファイルと送信先の詳細。
+ デバイスから最後のアップリンクメッセージを受信した時刻。
+ デバイスがプロビジョニング済みか登録済みかを示すステータス。

## JSON ファイルを取得する (CLI)
<a name="iot-sidewalk-json-get-api"></a>

AWS IoT Core for Amazon Sidewalk の API または AWS CLI を使用して Sidewalk エンドデバイスをプロビジョニングするための JSON ファイルを取得するには、デバイスプロファイルとワイヤレスデバイスに関する情報を取得した API レスポンスを JSON ファイル (*`wireless_device.json`* および *`device_profile.json`* など) として一時的に保存します。Sidewalk デバイスのプロビジョニングに使用します。

JSON ファイルを取得する方法は次のとおりです。

**Topics**
+ [ステップ 1: デバイスプロファイル情報を JSON ファイルとして取得する](#iot-sidewalk-profile-get)
+ [ステップ 2: Sidewalk デバイス情報を JSON ファイルとして取得する](#iot-sidewalk-get-device)

### ステップ 1: デバイスプロファイル情報を JSON ファイルとして取得する
<a name="iot-sidewalk-profile-get"></a>

[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html) API オペレーションまたは [https://docs.aws.amazon.com/cli/latest/reference/get-device-profile.html](https://docs.aws.amazon.com/cli/latest/reference/get-device-profile.html) CLI コマンドを使用して、AWS IoT Core for Amazon Sidewalk のアカウントに追加したデバイスプロファイルに関する情報を取得します。デバイスプロファイルに関する情報を取得するには、プロファイル ID を指定します。

その後、API は指定された識別子とデバイス ID に一致するデバイスプロファイルに関する情報を返します。このレスポンス情報をファイルとして保存し、*`device_profile.json`* のような名前を付けます。

CLI コマンドの例を以下に示します。

```
aws iotwireless get-device-profile \ 
    --id "12345678-a1b2-3c45-67d8-e90fa1b2c34d" > device_profile.json
```

このコマンドを実行すると、デバイスプロファイルのパラメータ、アプリケーションサーバの公開キー、および `DeviceTypeID` が返されます。以下は、API からのサンプルレスポンス情報を含む JSON ファイルを示しています。API レスポンスのパラメータの詳細については、「[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetDeviceProfile.html)」を参照してください。

**`GetDeviceProfile` API レスポンス (`device_profile.json` の内容)**

```
{
    "Arn": "arn:aws:iotwireless:us-east-1:123456789012:DeviceProfile/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d",
    "Name": "Sidewalk_profile",
    "LoRaWAN": null,
    "Sidewalk":
    {        
        "ApplicationServerPublicKey": "a123b45c6d78e9f012a34cd5e6a7890b12c3d45e6f78a1b234c56d7e890a1234",
        "DAKCertificateMetadata": [
            {                
                "DeviceTypeId: "fe98",
                "CertificateId": "43564A6D2D50524F544F54595045",
                "FactorySupport": false,
                "MaxAllowedSignature": 1000                
            }
        ],
        "QualificationStatus": false
    }
}
```

### ステップ 2: Sidewalk デバイス情報を JSON ファイルとして取得する
<a name="iot-sidewalk-get-device"></a>

[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessDevice.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessDevice.html) API オペレーションまたは [https://docs.aws.amazon.com/cli/latest/reference/get-wireless-device.html](https://docs.aws.amazon.com/cli/latest/reference/get-wireless-device.html) CLI コマンドを使用して、AWS IoT Core for Amazon Sidewalk のアカウントに追加した Sidewalk デバイスに関する情報を取得します。エンドデバイスに関する情報を取得するには、デバイスを追加したときに取得したワイヤレスデバイスの識別子を指定します。

その後、API は指定された識別子とデバイス ID に一致するデバイスに関する情報を返します。このレスポンス情報を JSON ファイルとして保存します。*`wireless_device.json`* など、ファイルにはわかりやすい名前を使用します。

以下の例は、CLI を使用するコマンドを実行する例を示しています。

```
aws iotwireless get-wireless-device --identifier-type WirelessDeviceId \ 
    --identifier "23456789-abcd-0123-bcde-fabc012345678" > wireless_device.json
```

このコマンドを実行すると、デバイスの詳細、デバイス証明書、プライベートキー、Sidewalk の製造シリアル番号 (SMSN) が返されます。次は、このコマンドを実行したときの出力の例を示しています。API レスポンスのパラメータの詳細については、「[https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessDevice.html](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetWirelessDevice.html)」を参照してください。

**`GetWirelessDevice` API レスポンス (`wireless_device.json` の内容)**

```
{
    "Arn": "arn:aws:iotwireless:us-east-1:123456789012:WirelessDevice/23456789-abcd-0123-bcde-fabc012345678",
    "Id": "23456789-abcd-0123-bcde-fabc012345678",
    "DestinationName": "SidewalkDestination",   
    "Type": "Sidewalk",
    "Sidewalk": {        
        "CertificateId": "4C7438772D50524F544F54595045",
        "DeviceCertificates": [
            {
                "SigningAlg": "Ed25519",
                "Value": "hDdkJw9L2uMCORjImjMHqzNR6nYYh6QKncSl5GthQNl7NKe4ounb5UMQtLjnm7zOUPYOqghCeVOLCBUiQe2ZiMBEW18JDUXIhffPobqZgohK91+LKFJ10X/F+GeltcafZcFKhS+O5NPcVNR/fHYaf/cn5iUbRwlz/T+ODXvGdwkBkgDyFgoUJgn7JdzFjaneE5qzTWXUbL79i1sXToGGjP8hiD9jJhidPWhIswleydAWgO1OZGA4CjzIaSGVM1VtaLB0VDphAkEpjMkZrtVDH3S8U1vDZTVi6YSbnkYZgfWv/uMMBfgAeL8Tdv5LkFIPIB3ZX9zt8zzmAuFRzI4MuNjWfIDnOF6AKu37WWU6/QYhZoQrW9D/wndiCcsRGl+ANn367r/HE02Re4DOiCfs9f2rjc4LT1LKt7g/KW2ii+W+9HYvvY0bBAI+AHx6Cx4j+djabTsvrgW2k6NU2zUSM7bdDP3z2a2+Z4WzBji/jYwt/OP8rpsy5Ee4ywXUfCsfQ0rKOr0zay6yh27p3I3MZle2oCO4JIlqK0VbIQqsXzSSyp6XXS0lhmuGugZ1AAADGz+gFBeX/ZNN8VJwnsNfgzj4me1HgVJdUo4W9kvx9cr2jHWkC3Oj/bdBTh1+yBjOC53yHlQK/l1GHrEWiWPPnE434LRxnWkwr8EHD4oieJxC8fkIxkQfj+gHhU79Z+oAAYAAAzsnf9SDIZPoDXF0TdC9POqTgld0oXDl2XPaVD4CvvLearrOSlFv+lsNbC4rgZn23MtIBM/7YQmJwmQ+FXRup6Tkubg1hpz04J/09dxg8UiZmntHiUr1GfkTOFMYqRB+Aw=="
            },
            {
                "SigningAlg": "P256r1",
                "Value": "hDdkJw9L2uMCORjImjMHqzNR6nYYh6QKncSl5GthQNmHmGU8a+SOqDXWwDNt3VSntpbTTQl7cMIusqweQo+JPXXWElbGh7eaxPGz4ZeF5yM2cqVNUrQr1lX/6lZ+OLuycrFrLzzB9APi0NIMLqV/Rt7XJssHQs2RPcT1ul/2XVpa6ztULJeQi2JwhTb/k48wbh/EvafG/ibrIBIx9v7/dwGRAPKHq7Uwb9hHnhpa8qNOUtjeUdIwJNh9vCBFX9s22t4PdortoFxbXo9C149PDDD4wqUHJGYlCsVX/Sqqjf7Aug3h5dwdYN6cDgsuuiOm0+aBcXBGpkh7OxVxlwXkIP+11dt23TkrSUKd0B01sc9Mc/0yEBCzx5RutKBwsefzyOl4vQX3AHgV7oD/XV73THMgGiDxQ55CPaaxN/pm791VkQ76BSZaBeF+Su6tg0k/eQneklt8Du5uqkyBHVxy8MvxsBIMZ73vIFwUrLHjDeq3+nOOyQqSBMnrHKU2mAwN3zb2LolwjPkKNOh1+NNnv99L2pBcNCnhnoBULWmWAZNXJpMx9QrcSwI9AHylcgUbGQJgf9Ryun+BgewzYNdWrXyKkp4O3ZDa4f+5SVWvbY5eyDDXcohvz/OcCtuRjAkzKBCvIjBDnCv1McjVdCO3+utizGntfhAo1RZstnOoRkgVF2WuMT9IrUmzYximuTXUmWtjyFSTqgNBZwHWUTlMmjlpLCVzZQWM4zOisXUAAALPsP34BS6EzJO5AsS5pC7QTpjBtAbLN9SdXOT9w4H1x8Nkp0ujLxWRN37IEy0V9DrPK2w1g74uqWPfUPnSBjtvM55JnQpmm23WQNvHa1Vr6zmWDjzjHpcNirPbzXyBlKEhkX4xylaSMnm4UrVXtAMaAJ/csC4HPTKr3dazdvEkhwGAAAIFByCjSp/5WHc4AhsyjMvKCsZQiKgiI8ECwjfXBaSZdY4zYsRlO3FC428H1atrFChFCZT0Bqt5LPXD38bMSB+vAUJiP8XqiEdXeqf2mYMJ5ykoDpwkve/cUQfPpjzFQlQfvwjBwiJDANKkOKoNT3bUGz+/f/pyTE+xMRdIUBZ1Bw=="
            }
        ],
        "DeviceProfileId": "0ff5b0c6-f149-4498-af34-21993acd52a7",
        "PrivateKeys": [
            {
                "SigningAlg": "Ed25519",
                "Value": "2c24d4572327f23b9bef38097137c29224a9e979081b3d90124ac9dfa477934e"
            },
            {
                "SigningAlg": "P256r1",
                "Value": "38d526f29cfaf142f596deca187bd809ef71bc13435eedc885b63bb825d63def"
            }
        ],        
        "SidewalkManufacturingSn": "843764270F4BDAE3023918C89A3307AB3351EA761887A40A9DC4A5E46B6140D9",
        "Status": "PROVISIONED"
    },
    
    ...
    
}
```

## 次のステップ
<a name="iot-sidewalk-json-next"></a>

JSON ファイル、*`wireless_device.json`*、*`device_profile.json`* を一時的に保存し、次のステップでそれらを使用してハードウェアプラットフォームに接続するためのエンドデバイスのプロビジョニングと登録を行います。詳細については、「Amazon Sidewalk ドキュメント」の「[エンドデバイスのプロビジョニングと登録](https://docs.sidewalk.amazon/provisioning/)」を参照してください。