翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
マイクロコントローラーボードのテストを初めて準備する
IDT for FreeRTOS を使用して、FreeRTOS ライブラリの実装をテストできます。ボードのデバイスドライバー用に FreeRTOS ライブラリを移植したら、マイクロコントローラーボード上で AWS IoT Device Tester を使用して認定テストを実行します。
ライブラリ移植レイヤーを追加し、FreeRTOS テストリポジトリを実装する
デバイス用に FreeRTOS を移植するには、「FreeRTOS 移植ガイド」を参照してください。FreeRTOS テストリポジトリを実装して FreeRTOS レイヤーを移植する際には、テストリポジトリを含む各ライブラリへのパスを指定した manifest.yml
を提供する必要があります。このファイルは、ソースコードのルートディレクトリにあります。詳細については、「マニフェストファイルの手順」を参照してください。
AWS 認証情報を設定する
AWS クラウドと通信するには、AWS IoT Device Tester 用の AWS 認証情報を設定する必要があります。詳細については、開発用の AWS 認証情報とリージョンのセットアップを参照してください。有効な AWS 認証情報は、
設定ファイルで指定されます。devicetester_extract_location
/devicetester_freertos_[win|mac|linux]
/configs/config.json
"auth": { "method": "environment" } "auth": { "method": "file", "credentials": { "profile": "<your-aws-profile>" } }
config.json
ファイルの auth
属性には AWS 認証を制御するメソッドフィールドがあり、file または environment のいずれかとして宣言できます。このフィールドを environment に設定すると、ホストマシンの環境変数から AWS 認証情報がプルされます。このフィールドを file に設定すると、指定されたプロファイルが .aws/credentials
設定ファイルからインポートされます。
IDT for FreeRTOS でデバイスプールを作成する
テストするデバイスは、デバイスプールにまとめられます。各デバイスプールは、1 つ以上の同一デバイスで構成されます。IDT for FreeRTOS を設定して、プール内の 1 つのデバイスまたは複数のデバイスをテストすることもがきます。認定プロセスを迅速化するために、IDT for FreeRTOS は、同じ仕様を持つデバイスを並行してテストできます。その際、ラウンドロビンメソッドを使用し、デバイスプール内の各デバイスで異なるテストグループが実行されます。
device.json
ファイルの最上位には配列があります。各配列属性は新しいデバイスプールです。各デバイスプールにはデバイス配列属性があり、複数のデバイスが宣言されています。テンプレートには 1 つのデバイスプールがあり、そのデバイスプールにはデバイスが 1 つしかありません。1 つ以上のデバイスをデバイスプールに追加するには、configs
フォルダにある device.json
テンプレートの devices
セクションを編集します。
注記
同じプール内のすべてのデバイスの技術仕様と SKU は同じでなければなりません。IDT for FreeRTOS は、異なるテストグループに対してソースコードの並列ビルドを可能にするため、ソースコードを IDT for FreeRTOS の抽出されたフォルダにある結果フォルダにコピーします。ビルドコマンドまたはフラッシュコマンドでは、testdata.sourcePath
変数を使用してソースコードパスを参照する必要があります。IDT for FreeRTOS は、この変数を、コピーしたソースコードの一時パスで置き換えます。詳細については、「IDT for FreeRTOS 変数」を参照してください。
次の例では、device.json
ファイルを使用して、複数のデバイスが含まれるデバイスプールを作成しました。
[ { "id": "pool-id", "sku": "sku", "features": [ { "name": "Wifi", "value": "Yes | No" }, { "name": "Cellular", "value": "Yes | No" }, { "name": "BLE", "value": "Yes | No" }, { "name": "PKCS11", "value": "RSA | ECC | Both" }, { "name": "OTA", "value": "Yes | No", "configs": [ { "name": "OTADataPlaneProtocol", "value": "MQTT | HTTP | None" } ] }, { "name": "KeyProvisioning", "value": "Onboard | Import | Both | No" } ], "devices": [ { "id": "device-id", "connectivity": { "protocol": "uart", "serialPort": "/dev/tty*" }, "secureElementConfig" : { "publicKeyAsciiHexFilePath": "absolute-path-to/public-key-txt-file: contains-the-hex-bytes-public-key-extracted-from-onboard-private-key", "publiDeviceCertificateArn": "arn:partition:iot:region:account-id:resourcetype:resource:qualifier", "secureElementSerialNumber": "secure-element-serialNo-value", "preProvisioned" : "Yes | No", "pkcs11JITPCodeVerifyRootCertSupport": "Yes | No" }, "identifiers": [ { "name": "serialNo", "value": "serialNo-value" } ] } ] } ]
次の属性は、device.json
ファイルで使用されます。
-
id
-
デバイスのプールを一意に識別するユーザー定義の英数字の ID。プールに属するデバイスは同じタイプであることが必要です。テストスイートを実行するとき、プールのデバイスを使用してワークロードが並列化されます。
-
sku
-
テスト対象であるボードを一意に識別する英数字の値。SKU は、適格性が確認されたボードの追跡に使用されます。
注記
AWS Partner Device Catalog にボードを出品する場合は、ここで指定する SKU と出品プロセスで使用する SKU が一致する必要があります。
-
features
-
デバイスでサポートされる機能を含む配列。AWS IoT Device Tester は、この情報を使用して、実行する認定テストを選択します。
サポートされている値は以下のとおりです。
-
Wifi
-
ボードが Wi-Fi 機能を備えているかどうかを示します。
-
Cellular
-
ボードがセルラー機能を備えているかどうかを示します。
-
PKCS11
-
ボードがサポートする公開鍵暗号化アルゴリズムを指定します。資格認定には PKCS11 が必要です。サポートされている値は、
ECC
、RSA
、およびBoth
です。Both
は、ボードがECC
とRSA
の両方をサポートしていることを示します。 -
KeyProvisioning
-
信頼された X.509 クライアント証明書をボードに書き込む方法を指定します。
有効な値は、
Import
、Onboard
、Both
、およびNo
です。認定には、Onboard
、Both
、またはNo
キープロビジョニングが必要です。Import
単独では認定に有効なオプションではありません。-
Import
は、ボードがプライベートキーのインポートを許可している場合にのみ使用します。Import
の選択は認定には有効な構成ではないため、テスト目的、特に PKCS11 テストケースでのみ使用してください。Onboard
、Both
またはNo
は認定に必須です。 -
ボードがオンボードプライベートキーをサポートしている場合 (例えば、デバイスに安全な要素がある場合、または独自のデバイスのキーペアと証明書を生成する場合) は、
Onboard
を使用します。各デバイスセクションにsecureElementConfig
要素を追加し、publicKeyAsciiHexFilePath
フィールドにパブリックキーファイルへの絶対パスを入力していることを確認します。 -
Both
は、ボードがキープロビジョニングのためにプライベートキーのインポートとオンボードキーの生成の両方をサポートしている場合に使用します。 -
No
は、ボードがキープロビジョニングをサポートしていない場合に使用します。No
は、デバイスも事前プロビジョニングされている場合のにみ有効なオプションです。
-
-
OTA
-
ボードが無線 (OTA) による更新機能をサポートしているかどうかを示します。
OtaDataPlaneProtocol
属性は、デバイスがサポートする OTA データプレーンプロトコルを示します。認定には、HTTP または MQTT データプレーンプロトコルのいずれかを使用する OTA が必要です。テスト中に OTA テストの実行をスキップするには、OTA 機能をNo
に、OtaDataPlaneProtocol
属性をNone
に設定します。これは認定の実行にはなりません。 -
BLE
-
ボードが Bluetooth Low Energy (BLE) をサポートしているかどうかを示します。
-
-
devices.id
-
テスト対象のデバイスのユーザー定義の一意の識別子。
-
devices.connectivity.serialPort
-
テスト対象であるデバイスへの接続に使用される、ホストコンピュータのシリアルポート。
-
devices.secureElementConfig.PublicKeyAsciiHexFilePath
-
ボードが
pre-provisioned
ではない場合、またはPublicDeviceCertificateArn
が指定されていない場合は必須です。Onboard
はキープロビジョニングの必須タイプであるため、現在 FullTransportInterfaceTLS テストグループでは、このフィールドは必須です。デバイスがpre-provisioned
の場合、PublicKeyAsciiHexFilePath
はオプションであり、含める必要はありません。次のブロックは、
Onboard
プライベートキーから抽出された 16 進バイトのパブリックキーを含むファイルへの絶対パスです。3059 3013 0607 2a86 48ce 3d02 0106 082a 8648 ce3d 0301 0703 4200 04cd 6569 ceb8 1bb9 1e72 339f e8cf 60ef 0f9f b473 33ac 6f19 1813 6999 3fa0 c293 5fae 08f1 1ad0 41b7 345c e746 1046 228e 5a5f d787 d571 dcb2 4e8d 75b3 2586 e2cc 0c
パブリックキーが .der 形式の場合は、パブリックキーを直接 16 進エンコードして 16 進ファイルを生成できます。
.der パブリックキーから 16 進ファイルを生成するには、次の xxd コマンドを入力します。
xxd -p pubkey.der > outFile
パブリックキーが.pem 形式の場合、base64 でエンコードされたヘッダーとフッターを抽出し、それをバイナリ形式にデコードできます。その後、バイナリ文字列を 16 進エンコードして 16 進ファイルを生成します。
.pem パブリックキーの 16 進ファイルを生成するには、以下を行います。
-
次の base64 コマンドを実行して、パブリックキーから base64 ヘッダーとフッターを削除します。その後、
base64key
という名前のデコードされたキーが、ファイルpubkey.der
に出力されます。base64 —decode base64key > pubkey.der
-
次の xxd コマンドを実行して、
pubkey.der
を 16 進形式に変換します。結果として生成されたキーは、
として保存されます。outFile
xxd -p pubkey.der >
outFile
-
-
devices.secureElementConfig.PublicDeviceCertificateArn
-
AWS IoT Core にアップロードされたセキュアエレメントからの証明書の ARN。証明書を AWS IoT Core にアップロードする方法については、「AWS IoT デベロッパーガイド」の「X.509 クライアント証明書」を参照してください。
-
devices.secureElementConfig.SecureElementSerialNumber
-
(オプション) 安全なエレメントのシリアル番号。シリアル番号は、オプションで JITR キープロビジョニング用のデバイス証明書を作成するために使用されます。
-
devices.secureElementConfig.preProvisioned
-
(オプション) デバイスにロックダウンされた認証情報を持つ事前プロビジョニングされたセキュア要素があり、オブジェクトをインポート、作成、または破棄できない場合は、「Yes」に設定します。この属性が Yes に設定されている場合は、対応する pkcs11 ラベルを指定する必要があります。
-
devices.secureElementConfig.pkcs11JITPCodeVerifyRootCertSupport
-
(オプション) デバイスの corePKCS11 実装が JITP 用のストレージをサポートしている場合は Yes に設定します。これにより、コア PKCS 11 をテストするときに JITP
codeverify
テストが可能になり、コード検証キー、JITP 証明書、およびルート証明書 PKCS 11 ラベルを指定する必要があります。 -
identifiers
-
(オプション) 任意の名前と値のペアの配列。これらの値は、次のセクションで説明されているビルドコマンドやフラッシュコマンドで使用できます。
ビルド、フラッシュ、テスト設定を設定する
IDT for FreeRTOS は、自動的にテストをビルドしてボードにフラッシュします。これを有効にするには、ハードウェアに対してビルドコマンドとフラッシュコマンドを実行するように IDT を設定する必要があります。ビルドとフラッシュのコマンド設定は、config
フォルダにある userdata.json
テンプレートファイルで設定されています。
デバイスをテストするための設定
ビルド、フラッシュ、およびテストの設定は、configs/userdata.json
ファイルで行います。次の JSON の例は、複数のデバイスをテストするために IDT for FreeRTOS を設定する方法を示します。
{ "sourcePath": "</path/to/freertos>", "retainModifiedSourceDirectories": true | false, "freeRTOSVersion": "<freertos-version>", "freeRTOSTestParamConfigPath": "{{testData.sourcePath}}/path/from/source/path/to/test_param_config.h", "freeRTOSTestExecutionConfigPath": "{{testData.sourcePath}}/path/from/source/path/to/test_execution_config.h", "buildTool": { "name": "your-build-tool-name", "version": "your-build-tool-version", "command": [ "<build command> -any-additional-flags {{testData.sourcePath}}" ] }, "flashTool": { "name": "your-flash-tool-name", "version": "your-flash-tool-version", "command": [ "<flash command> -any-additional-flags {{testData.sourcePath}} -any-additional-flags" ] }, "testStartDelayms": 0, "echoServerConfiguration": { "keyGenerationMethod": "EC | RSA", "serverPort": 9000 }, "otaConfiguration": { "otaE2EFirmwarePath": "{{testData.sourcePath}}/relative-path-to/ota-image-generated-in-build-process", "otaPALCertificatePath": "/path/to/ota/pal/certificate/on/device", "deviceFirmwarePath" : "/path/to/firmware/image/name/on/device", "codeSigningConfiguration": { "signingMethod": "AWS | Custom", "signerHashingAlgorithm": "SHA1 | SHA256", "signerSigningAlgorithm": "RSA | ECDSA", "signerCertificate": "arn:partition:service:region:account-id:resource:qualifier | /absolute-path-to/signer-certificate-file", "untrustedSignerCertificate": "arn:partition:service:region:account-id:resourcetype:resource:qualifier", "signerCertificateFileName": "signerCertificate-file-name", "compileSignerCertificate": true | false, // ***********Use signerPlatform if you choose AWS for signingMethod*************** "signerPlatform": "AmazonFreeRTOS-Default | AmazonFreeRTOS-TI-CC3220SF" ] } }, ********** This section is used for PKCS #11 labels of private key, public key, device certificate, code verification key, JITP certificate, and root certificate. When configuring PKCS11, you set up labels and you must provide the labels of the device certificate, public key, and private key for the key generation type (EC or RSA) it was created with. If your device supports PKCS11 storage of JITP certificate, code verification key, and root certificate, set 'pkcs11JITPCodeVerifyRootCertSupport' to 'Yes' in device.json and provide the corresponding labels. ********** "pkcs11LabelConfiguration":{ "pkcs11LabelDevicePrivateKeyForTLS": "<device-private-key-label>", "pkcs11LabelDevicePublicKeyForTLS": "<device-public-key-label>", "pkcs11LabelDeviceCertificateForTLS": "<device-certificate-label>", "pkcs11LabelPreProvisionedECDevicePrivateKeyForTLS": "<preprovisioned-ec-device-private-key-label>", "pkcs11LabelPreProvisionedECDevicePublicKeyForTLS": "<preprovisioned-ec-device-public-key-label>", "pkcs11LabelPreProvisionedECDeviceCertificateForTLS": "<preprovisioned-ec-device-certificate-label>", "pkcs11LabelPreProvisionedRSADevicePrivateKeyForTLS": "<preprovisioned-rsa-device-private-key-label>", "pkcs11LabelPreProvisionedRSADevicePublicKeyForTLS": "<preprovisioned-rsa-device-public-key-label>", "pkcs11LabelPreProvisionedRSADeviceCertificateForTLS": "<preprovisioned-rsa-device-certificate-label>", "pkcs11LabelCodeVerifyKey": "<code-verification-key-label>", "pkcs11LabelJITPCertificate": "<JITP-certificate-label>", "pkcs11LabelRootCertificate": "<root-certificate-label>" } }
次のリストは、userdata.json
で使用される属性です。
-
sourcePath
-
移植された FreeRTOS ソースコードのルートへのパス。
-
retainModifiedSourceDirectories
-
(オプション) ビルド時やフラッシュ時に使用した変更後のソースディレクトリをデバッグ用に保持するかどうかをチェックします。
true
に設定すると、変更されたソースディレクトリは retainedSrc という名前になり、実行された各テストグループの結果ログフォルダに保存されます。含まれない場合、このフィールドはデフォルトでfalse
になります。 -
freeRTOSTestParamConfigPath
-
FreeRTOS-Libraries-Integration-Tests 統合用の
test_param_config.h
ファイルへのパス。このファイルでは、{{testData.sourcePath}}
プレースホルダー変数を使用してソースコードルートを基準にする必要があります。AWS IoT Device Tester は、このファイル内のパラメータを使用してテストを設定します。 -
freeRTOSTestExecutionConfigPath
-
FreeRTOS-Libraries-Integration-Tests 統合用の
test_execution_config.h
ファイルへのパス。このファイルでは、{{testData.sourcePath}}
プレースホルダー変数を使用してリポジトリルートを基準にする必要があります。AWS IoT Device Tester は、このファイルを使用して、どのテストを実行する必要があるかを制御します。 -
freeRTOSVersion
-
実装で使用されているパッチバージョンを含む FreeRTOS のバージョン。AWS IoT Device Tester for FreeRTOS と互換性のある FreeRTOS バージョンについては、「Supported versions of AWS IoT Device Tester for FreeRTOS」を参照してください。
-
buildTool
-
ソースコードをビルドするコマンド。ビルドコマンドでのソースコードパスへの参照はすべて、AWS IoT Device Tester 変数の
{{testData.sourcePath}}
で置き換える必要があります。AWS IoT Device Tester ルートパスに対する相対パスでビルドスクリプトを参照するには、{{config.idtRootPath}}
プレースホルダーを使用します。 -
flashTool
-
イメージをデバイスにフラッシュするコマンド。フラッシュコマンドでのソースコードパスへの参照はすべて、AWS IoT Device Tester 変数の
{{testData.sourcePath}}
で置き換える必要があります。AWS IoT Device Tester ルートパスに対する相対パスでフラッシュスクリプトを参照するには、{{config.idtRootPath}}
プレースホルダーを使用します。注記
FRQ 2.0 を使用した新しい統合テスト構造では、
{{enableTests}}
や{{buildImageName}}
などのパス変数は必要ありません。OTA エンドツーエンドテストは、FreeRTOS-Libraries-Integration-TestsGitHub リポジトリで提供されている設定テンプレートを使用して実行されます。GitHub リポジトリ内のファイルが親ソースプロジェクトに存在する場合、ソースコードはテスト間で変更されません。OTA エンドツーエンド用に別のビルドイメージが必要な場合は、このイメージをビルドスクリプトでビルドし、 otaConfiguration
で指定したuserdata.json
ファイルでそのイメージを指定する必要があります。 -
testStartDelayms
-
FreeRTOS test runner がテストの実行を開始する前に待機するミリ秒数を指定します。これは、ネットワークやその他の遅延が原因で、IDT が接続してロギングを開始する前にテスト対象のデバイスが重要なテスト情報の出力を開始した場合に役立ちます。この値は FreeRTOS テストグループにのみ適用され、FreeRTOS test runner を使用しない他のテストグループ (OTA テストなど) には適用されません。[expected 10 but received 5] のようなエラーが表示された場合は、このフィールドを 5000 に設定する必要があります。
-
echoServerConfiguration
-
TLS テスト用のエコーサーバーをセットアップするための設定。このフィールドは必須です。
-
keyGenerationMethod
-
エコーサーバーはこのオプションで設定されます。オプションは EC または RSA です。
-
serverPort
-
エコーサーバーが稼働するポート番号。
-
-
otaConfiguration
-
OTA PAL テストと OTA E2E テストの設定。このフィールドは必須です。
otaE2EFirmwarePath
-
IDT が OTA エンドツーエンドテストに使用する OTA バイナリイメージへのパス。
-
otaPALCertificatePath
-
デバイス上の OTA PAL テストの証明書へのパス。これは署名の検証に使用されます。例えば、ecdsa-sha256-signer.crt.pem などです。
-
deviceFirmwarePath
-
起動するファームウェアイメージのハードコード名へのパス。デバイスがファームウェアの起動にファイルシステムを使用しない場合は、このフィールドを
'NA'
として指定します。デバイスがファームウェアブートにファイルシステムを使用する場合は、ファームウェアブートイメージのパスまたは名前を指定します。 -
codeSigningConfiguration
-
-
signingMethod
-
コード署名の方法。指定できる値は、AWS または Custom です。
注記
北京および寧夏リージョンでは、Custom を使用します。これらのリージョンでは、AWS コード署名はサポートされていません。
-
signerHashingAlgorithm
-
デバイスでサポートされているハッシュアルゴリズム。想定される値は、
SHA1
またはSHA256
です。 -
signerSigningAlgorithm
-
デバイスでサポートされている署名アルゴリズム。想定される値は、
RSA
またはECDSA
です。 -
signerCertificate
-
OTA 用の信頼された証明書。AWS コード署名方法では、AWS Certificate Manager にアップロードされた、信頼された証明書の Amazon リソースネーム (ARN) を使用します。カスタムコード署名方法では、署名者の証明書ファイルへの絶対パスを使用します。信頼された証明書を作成する方法については、「コード署名証明書の作成」を参照してください。
-
untrustedSignerCertificate
-
一部の OTA テストで信頼できない証明書として使用される 2 番目の証明書の ARN またはファイルパス。証明書を作成する方法については、「コード署名証明書の作成」を参照してください。
-
signerCertificateFileName
-
デバイスのコード署名証明書のファイル名。この値は、
aws acm import-certificate
コマンド実行時に指定したファイル名と一致する必要があります。 -
compileSignerCertificate
-
署名検証証明書のステータスを決定するブール値。有効な値は、
true
およびfalse
です。コード署名者の署名検証証明書がプロビジョニングまたはフラッシュされていない場合は、この値を true に設定します。プロジェクトにコンパイルする必要があります。AWS IoT Device Tester は信頼された証明書を取得し、それを
aws_codesigner_certificate.h
にコンパイルします。 -
signerPlatform
-
AWS Code Signer が OTA 更新ジョブの作成時に使用する署名およびハッシュアルゴリズム。現在、このフィールドで可能な値は、
AmazonFreeRTOS-TI-CC3220SF
とAmazonFreeRTOS-Default
です。-
SHA1
およびRSA
の場合は、AmazonFreeRTOS-TI-CC3220SF
を選択します。 -
SHA256
およびECDSA
の場合は、AmazonFreeRTOS-Default
を選択します。 -
設定に
SHA256
|RSA
またはSHA1
|ECDSA
が必要な場合は、当社に追加のサポートを依頼してください。 -
signingMethod
としてCustom
を選択した場合は、signCommand
を設定します。
-
-
signCommand
-
このコマンドには
{{inputImageFilePath}}
と{{outputSignatureFilePath}}
の 2 つのプレースホルダーが必要です。{{inputImageFilePath}}
は、IDT によって構築される署名対象のイメージのファイルパスです。{{outputSignatureFilePath}}
は、スクリプトによって生成される署名のファイルパスです。
-
-
pkcs11LabelConfiguration
-
PKCS11 ラベル設定には、PKCS11 テストグループを実行するために、デバイス証明書ラベル、公開鍵ラベル、秘密鍵ラベルのラベルセットが少なくとも 1 セット必要です。必要な PKCS11 ラベルは、
device.json
ファイル内のデバイス設定に基づきます。事前プロビジョニングがdevice.json
で Yes に設定されている場合、必要なラベルは PKCS11 機能に対して選択された内容に応じて、以下のいずれかになります。-
PreProvisionedEC
-
PreProvisionedRSA
事前プロビジョニングが
device.json
で No に設定されている場合、必要なラベルは以下のとおりです。-
pkcs11LabelDevicePrivateKeyForTLS
-
pkcs11LabelDevicePublicKeyForTLS
-
pkcs11LabelDeviceCertificateForTLS
次の 3 つのラベルは、
device.json
ファイルでpkcs11JITPCodeVerifyRootCertSupport
に対して Yes を選択した場合にのみ必要です。-
pkcs11LabelCodeVerifyKey
-
pkcs11LabelRootCertificate
-
pkcs11LabelJITPCertificate
これらのフィールドの値は、「FreeRTOS 移植ガイド」で定義されている値と一致する必要があります。
-
pkcs11LabelDevicePrivateKeyForTLS
-
(オプション) このラベルはプライベートキーの PKCS #11 ラベルに使用されます。キープロビジョニングのオンボードサポートとインポートサポートがあるデバイスの場合、このラベルがテストに使用されます。このラベルは、事前プロビジョニングされたケースで定義されたラベルとは異なる場合があります。
device.json
でキープロビジョニングを No に設定し、事前プロビジョニングを Yes に設定した場合、これは未定義になります。 -
pkcs11LabelDevicePublicKeyForTLS
-
(オプション) このラベルはパブリックキーの PKCS #11 ラベルに使用されます。キープロビジョニングのオンボードサポートとインポートサポートがあるデバイスの場合、このラベルがテストに使用されます。このラベルは、事前プロビジョニングされたケースで定義されたラベルとは異なる場合があります。
device.json
でキープロビジョニングを No に設定し、事前プロビジョニングを Yes に設定した場合、これは未定義になります。 -
pkcs11LabelDeviceCertificateForTLS
-
(オプション) このラベルはデバイス証明書の PKCS #11 ラベルに使用されます。キープロビジョニングのオンボードサポートとインポートサポートがあるデバイスの場合、このラベルがテストに使用されます。このラベルは、事前プロビジョニングされたケースで定義されたラベルとは異なる場合があります。
device.json
でキープロビジョニングを No に設定し、事前プロビジョニングを Yes に設定した場合、これは未定義になります。 -
pkcs11LabelPreProvisionedECDevicePrivateKeyForTLS
-
(オプション) このラベルはプライベートキーの PKCS #11 ラベルに使用されます。セキュアエレメントまたはハードウェアの制限があるデバイスの場合、AWS IoT 認証情報を保存するために別のラベルが付けられます。デバイスが EC キーによる事前プロビジョニングをサポートしている場合は、このラベルを指定します。
device.json
で事前プロビジョニングが Yes に設定されている場合は、このラベルまたはpkcs11LabelPreProvisionedRSADevicePrivateKeyForTLS
、あるいはその両方を指定する必要があります。このラベルは、オンボードおよびインポートのケースで定義されたラベルとは異なる場合があります。 -
pkcs11LabelPreProvisionedECDevicePublicKeyForTLS
-
(オプション) このラベルはパブリックキーの PKCS #11 ラベルに使用されます。セキュアエレメントまたはハードウェアの制限があるデバイスの場合、AWS IoT 認証情報を保存するために別のラベルが付けられます。デバイスが EC キーによる事前プロビジョニングをサポートしている場合は、このラベルを指定します。
device.json
で事前プロビジョニングが Yes に設定されている場合は、このラベルまたはpkcs11LabelPreProvisionedRSADevicePublicKeyForTLS
、あるいはその両方を指定する必要があります。このラベルは、オンボードおよびインポートのケースで定義されたラベルとは異なる場合があります。 -
pkcs11LabelPreProvisionedECDeviceCertificateForTLS
-
(オプション) このラベルはデバイス証明書の PKCS #11 ラベルに使用されます。セキュアエレメントまたはハードウェアの制限があるデバイスの場合、AWS IoT 認証情報を保存するために別のラベルが付けられます。デバイスが EC キーによる事前プロビジョニングをサポートしている場合は、このラベルを指定します。
device.json
で事前プロビジョニングが Yes に設定されている場合は、このラベルまたはpkcs11LabelPreProvisionedRSADeviceCertificateForTLS
、あるいはその両方を指定する必要があります。このラベルは、オンボードおよびインポートのケースで定義されたラベルとは異なる場合があります。 -
pkcs11LabelPreProvisionedRSADevicePrivateKeyForTLS
-
(オプション) このラベルはプライベートキーの PKCS #11 ラベルに使用されます。セキュアエレメントまたはハードウェアの制限があるデバイスの場合、AWS IoT 認証情報を保存するために別のラベルが付けられます。デバイスが RSA キーによる事前プロビジョニングをサポートしている場合は、このラベルを指定します。
device.json
で事前プロビジョニングが Yes に設定されている場合は、このラベルまたはpkcs11LabelPreProvisionedECDevicePrivateKeyForTLS
、あるいはその両方を指定する必要があります。 -
pkcs11LabelPreProvisionedRSADevicePublicKeyForTLS
-
(オプション) このラベルはパブリックキーの PKCS #11 ラベルに使用されます。セキュアエレメントまたはハードウェアの制限があるデバイスの場合、AWS IoT 認証情報を保存するために別のラベルが付けられます。デバイスが RSA キーによる事前プロビジョニングをサポートしている場合は、このラベルを指定します。
device.json
で事前プロビジョニングが Yes に設定されている場合は、このラベルまたはpkcs11LabelPreProvisionedECDevicePublicKeyForTLS
、あるいはその両方を指定する必要があります。 -
pkcs11LabelPreProvisionedRSADeviceCertificateForTLS
-
(オプション) このラベルはデバイス証明書の PKCS #11 ラベルに使用されます。セキュアエレメントまたはハードウェアの制限があるデバイスの場合、AWS IoT 認証情報を保存するために別のラベルが付けられます。デバイスが RSA キーによる事前プロビジョニングをサポートしている場合は、このラベルを指定します。
device.json
で事前プロビジョニングが Yes に設定されている場合は、このラベルまたはpkcs11LabelPreProvisionedECDeviceCertificateForTLS
、あるいはその両方を指定する必要があります。 -
pkcs11LabelCodeVerifyKey
-
(オプション) このラベルはコード検証キーの PKCS #11 ラベルに使用されます。デバイスが JITP 証明書、コード検証キー、ルート証明書の PKCS #11 ストレージをサポートしている場合は、このラベルを指定します。
device.json
でpkcs11JITPCodeVerifyRootCertSupport
が Yes に設定されている場合は、このラベルを指定する必要があります。 -
pkcs11LabelJITPCertificate
-
(オプション) このラベルは JITP 証明書の PKCS #11 ラベルに使用されます。デバイスが JITP 証明書、コード検証キー、ルート証明書の PKCS #11 ストレージをサポートしている場合は、このラベルを指定します。
device.json
でpkcs11JITPCodeVerifyRootCertSupport
が Yes に設定されている場合は、このラベルを指定する必要があります。
-
IDT for FreeRTOS 変数
コードを構築し、デバイスをフラッシュするコマンドは、デバイスに関する接続情報やその他の情報がないと正しく実行できない場合があります。AWS IoT Device Tester を使用すると、JsonPathdevice.json
ファイルで指定されている情報を取得することができます。
パス変数
IDT for FreeRTOS は、コマンドラインと設定ファイルで使用できる次のようなパス変数を定義します。
-
{{testData.sourcePath}}
-
ソースコードパスに拡張されます。この変数を使用する場合は、フラッシュコマンドとビルドコマンドの両方で使用する必要があります。
-
{{device.connectivity.serialPort}}
-
シリアルポートに拡張されます。
-
{{device.identifiers[?(@.name == 'serialNo')].value[0]}}
-
デバイスのシリアル番号に拡張されます。
-
{{config.idtRootPath}}
-
AWS IoT Device Tester ルートパスに拡張されます。