AWS KMS に対して認証済みの呼び出しを行う方法 - AWS Key Management Service

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

AWS KMS に対して認証済みの呼び出しを行う方法

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

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

AWS Nitro Enclaves SDK は、Nitro Enclave 内でのみサポートされており、Recipient パラメーターとその値をすべての AWS KMS リクエストに自動的に追加します。

AWS SDK で認証済みリクエストを送信するには、Recipient パラメーターとその値を指定する必要があります。アテステーションドキュメントは、nitro-tpm-attest ユーティリティを使用して NitroTPM から取得するか、NSM API を使用して Nitro Secure Module (NSM) から取得することができます。

AWS KMS は、アテステーションドキュメントの内容に基づいて AWS KMS キーで認証済みオペレーションを許可または拒否するために使用できるポリシー条件キーをサポートします。AWS CloudTrail ログで 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 を参照してください。