翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
PKCS#11 プロバイダ
PKCS#11 プロバイダコンポーネント (aws.greengrass.crypto.Pkcs11Provider
) は、PKCS#11 インターフェイス
証明書とプライベートキーを HSM に保存する Greengrass コアデバイスをプロビジョニングするには、 AWS IoT Greengrass Core ソフトウェアをインストールするときに、このコンポーネントをプロビジョニングプラグインとして指定する必要があります。詳細については、「手動リソースプロビジョニングを使用して AWS IoT Greengrass Core ソフトウェアをインストールする」を参照してください。
AWS IoT Greengrass は、このコンポーネントを JAR ファイルとして提供します。このファイルは、インストール時にプロビジョニングプラグインとして指定するためにダウンロードできます。次の URL としてコンポーネントの JAR ファイルの最新バージョンをダウンロードできます: https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar
バージョン
このコンポーネントには、次のバージョンがあります。
-
2.0.x
タイプ
このコンポーネントはプラグインコンポーネント (aws.greengrass.plugin
) です。Greengrass nucleus は、nucleus と同じ Java バーチャルマシン (JVM) でこのコンポーネントを実行します。コアデバイスでこのコンポーネントのバージョンを変更するとき、nucleus が再起動します。
このコンポーネントは、Greengrass nucleus と同じログファイルを使用します。詳細については、「AWS IoT Greengrass ログのモニタリング」を参照してください。
詳細については、「コンポーネントタイプ」を参照してください。
オペレーティングシステム
このコンポーネントは、Linux コアデバイスにのみインストールできます。
要件
このコンポーネントには次の要件があります。
-
PKCS#1 v1.5
署名スキームと RSA-2048 キーサイズ (またはそれ以上の規模) または ECC キーを備えた RSA キーをサポートするハードウェアセキュリティモジュール。 注記
ECC キーを備えたハードウェアセキュリティモジュールを使用するには、v2.5.6 以降の Greengrass nucleus を使用する必要があります。
ハードウェアセキュリティモジュールとシークレットマネージャーを使用するには、RSA キーを備えたハードウェアセキュリティモジュールを使用する必要があります。
-
AWS IoT Greengrass Core ソフトウェアが (libdl を使用して) 実行時にロードして PKCS#11 関数を呼び出すことができる PKCS#11 プロバイダーライブラリ。PKCS#11 プロバイダライブラリは、次の PKCS#11 API オペレーションを実装する必要があります。
-
C_Initialize
-
C_Finalize
-
C_GetSlotList
-
C_GetSlotInfo
-
C_GetTokenInfo
-
C_OpenSession
-
C_GetSessionInfo
-
C_CloseSession
-
C_Login
-
C_Logout
-
C_GetAttributeValue
-
C_FindObjectsInit
-
C_FindObjects
-
C_FindObjectsFinal
-
C_DecryptInit
-
C_Decrypt
-
C_DecryptUpdate
-
C_DecryptFinal
-
C_SignInit
-
C_Sign
-
C_SignUpdate
-
C_SignFinal
-
C_GetMechanismList
-
C_GetMechanismInfo
-
C_GetInfo
-
C_GetFunctionList
-
-
ハードウェアモジュールは、「PKCS#11 仕様」で定義されているスロットラベルで解決できる必要があります。
-
プライベートキーと証明書は HSM の同じスロットに保存する必要があり、HSM がオブジェクト ID をサポートしている場合、同じオブジェクトラベルとオブジェクト ID を使用する必要があります。
-
証明書とプライベートキーがオブジェクトラベルで解決できる必要があります。
-
プライベートキーには、次の許可が必要です。
-
sign
-
decrypt
-
-
(オプション) シークレットマネージャーコンポーネントを使用する場合、バージョン 2.1.0 以降を使用する必要があります。また、プライベートキーには次の許可が必要です。
-
unwrap
-
wrap
-
-
(オプション) TPM2 ライブラリを使用し、Greengrass コアをサービスとして実行している場合は、環境変数に PKCS#11 ストアの場所を指定する必要があります。次の例は、必要な環境変数を含む systemd サービスファイルです。
[Unit] Description=Greengrass Core After=network.target [Service] Type=simple PIDFile=/var/run/greengrass.pid Environment=TPM2_PKCS11_STORE=
/path/to/store/directory
RemainAfterExit=no Restart=on-failure RestartSec=10 ExecStart=/bin/sh /greengrass/v2/alts/current/distro/bin/loader [Install] WantedBy=multi-user.target
依存関係
コンポーネントをデプロイすると、 はその依存関係の互換性のあるバージョン AWS IoT Greengrass もデプロイします。つまり、コンポーネントを正常にデプロイするには、コンポーネントとその依存関係のすべての要件を満たす必要があります。このセクションでは、このコンポーネントのリリースされたバージョンの依存関係と、各依存関係に対するコンポーネントのバージョンを定義するセマンティックバージョン制約をリスト表示しています。コンポーネントの各バージョンの依存関係は、AWS IoT Greengrass コンソール
コンポーネントの依存関係の詳細については、「コンポーネント recipe のリファレンス」を参照してください。
設定
このコンポーネントには、コンポーネントのデプロイ時にカスタマイズできる次の設定パラメータが用意されています。
name
-
PKCS#11 設定の名前。
library
-
AWS IoT Greengrass Core ソフトウェアが libdl でロードできる PKCS#11 実装のライブラリへの絶対ファイルパス。
slot
-
プライベートキーとデバイス証明書を含むスロットの ID。この値は、スロットインデックスやスロットラベルとは異なります。
userPin
-
スロットへのアクセスに使用するユーザー PIN。
例: 設定マージの更新
{ "name": "softhsm_pkcs11", "library": "/usr/lib/softhsm/libsofthsm2.so", "slot": 1, "userPin": "1234" }
ローカルログファイル
このコンポーネントは、Greengrass nucleus コンポーネントと同じログファイルを使用します。
このコンポーネントのログを確認するには
-
コアデバイスに次のコマンドを実行して、このコンポーネントのログファイルをリアルタイムに確認します。
または/greengrass/v2
C:\greengrass\v2
を AWS IoT Greengrass ルートフォルダへのパスに置き換えます。
変更ログ
次の表は、コンポーネントの各バージョンにおける変更を示します。
バージョン |
変更 |
---|---|
2.0.9 |
Greengrass nucleus バージョン 2.14.0 のリリース用にバージョンが更新されました。 |
2.0.8 |
Greengrass nucleus バージョン 2.13.0 のリリース用にバージョンが更新されました。 |
2.0.7 |
Greengrass nucleus バージョン 2.12.0 のリリース用にバージョンが更新されました。 |
2.0.6 |
Greengrass nucleus バージョン 2.11.0 のリリース用にバージョンが更新されました。 |
2.0.5 |
Greengrass nucleus バージョン 2.10.0 のリリース用にバージョンが更新されました。 |
2.0.4 |
Greengrass nucleus バージョン 2.9.0 のリリース用にバージョンが更新されました。 |
2.0.3 |
Greengrass nucleus バージョン 2.8.0 のリリース用にバージョンが更新されました。 |
2.0.2 |
Greengrass nucleus バージョン 2.7.0 のリリース用にバージョンが更新されました。 |
2.0.1 |
Greengrass nucleus バージョン 2.6.0 のリリース用にバージョンが更新されました。 |
2.0.0 |
当初のバージョン |