Nitro Enclave のAWS KMS API を呼び出す方法 - AWS Key Management Service

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

Nitro Enclave のAWS KMS API を呼び出す方法

Nitro Enclaveの AWS KMS API を呼び出すには、リクエスト内の Recipient パラメーターを使用して、エンクレーブの署名付きアテステーションドキュメントと、エンクレーブのパブリックキーで使用する暗号化アルゴリズムを指定します。リクエストに Recipient パラメーターと署名付きアテステーションドキュメントが含まれている場合、レスポンスには CiphertextForRecipient フィールドとパブリックキーによって暗号化された暗号文が含まれます。プレーンテキストフィールドは null または空です。

Recipient パラメーターは、AWS Nitro Enclave からの署名付きアテステーションドキュメントを指定する必要があります。AWS KMS は、エンクレーブのアテステーションドキュメントのデジタル署名を使用して、リクエストのパブリックキーが有効なエンクレーブからのものであることを証明します。アテステーションドキュメントにデジタル署名をして独自の証明書を提供することはできません。

Recipient パラメーターを指定するには、AWS Nitro Enclaves SDK または任意の AWS SDK を使用します。AWS Nitro Enclaves SDK は、Nitro Enclave 内でのみサポートされており、Recipient パラメーターとその値をすべての AWS KMS リクエストに自動的に追加します。AWS SDK で Nitro Enclaves をリクエストするには、Recipient パラメーターとその値を指定する必要があります。AWS SDK での Nitro Enclave 暗号化アテステーションのサポートは、2023 年 3 月に導入されました。

AWS KMS はポリシー条件キーをサポートします。このキーを使用し、アテステーションドキュメントの内容に基づく AWS KMS キーを使用したエンクレーブオペレーションを許可または拒否できます。また、AWS CloudTrail ログで Nitro Enclave の AWS KMS に対するリクエストを監視することもできます。

Recipient パラメーターおよび AWS CiphertextForRecipient レスポンスフィールドの詳細については、「AWS Key Management Service API リファレンス」、「AWS Nitro Enclaves SDK」または任意の AWS SDK の、「Decrypt」、「DeriveSharedSecret」、「GenerateDataKey」、「GenerateDataKeyPair」、および「GenerateRandom」のトピックを参照してください。暗号化のデータおよびデータキーの設定については、Using cryptographic attestation with AWS KMS を参照してください。