控制對 HMAC KMS 金鑰的存取 - AWS Key Management Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

控制對 HMAC KMS 金鑰的存取

若要控制對 HMAC KMS 金鑰的存取,請使用金鑰政策,每個 KMS 金鑰都需要有此政策。您也可以使用 IAM 政策授予工具。

在 AWS KMS 主控台中建立的 HMAC 金鑰預設金鑰政策,會授予金鑰使用者呼叫 GenerateMacVerifyMac 操作的許可。但此政策中不包含專為使用 AWS 服務授予所設計的金鑰政策陳述式。若您使用 CreateKey 操作建立 HMAC 金鑰,則必須在金鑰政策或 IAM 政策中指定這些許可。

您可以使用 AWS 全域條件金鑰和 AWS KMS 條件金鑰來精簡及限制 HMAC 金鑰的許可。例如,您可以使用 kms:ResourceAliases 條件金鑰,依據與 HMAC 金鑰相關聯的別名,控制對 AWS KMS 操作的存取。以下 AWS KMS 政策條件對 HMAC 金鑰政策十分實用。

  • 使用 kms:MacAlgorithm 條件金鑰來限制主體在呼叫 GenerateMacVerifyMac 操作時可請求的演算法。例如,您可以允許主體呼叫 GenerateMac 操作,但僅限於請求中的 MAC 演算法為 HMAC_SHA_384 時。

  • 使用 kms:KeySpec 條件金鑰允許或阻止主體建立特定類型的 HMAC 金鑰。例如,若要允許主參與者只建立 HMAC 金鑰,您可以允許CreateKey作業,但使用kms:KeySpec條件只允許具有金鑰規格的金HMAC_384鑰。

    您也可以使用 kms:KeySpec 條件金鑰,依據金鑰規格,控制對 KMS 金鑰上其他操作的存取。例如,您可以僅允許主體在具有 HMAC_256 金鑰規格的 KMS 金鑰上,排定和取消金鑰刪除。

  • 使用 kms:KeyUsage 條件金鑰允許或阻止主體建立任何 HMAC 金鑰。例如,若要允許主參與者只建立 HMAC 金鑰,您可以允許CreateKey作業,但使用kms:KeyUsage條件只允許使用金鑰的GENERATE_VERIFY_MAC金鑰。

    您也可以使用 kms:KeyUsage 條件金鑰,依據金鑰用途,控制對 KMS 金鑰上其他操作的存取。例如,您可以僅允許主體在具有 GENERATE_VERIFY_MAC 金鑰用途的 KMS 金鑰上進行啟用和停用。

您也可以為 GenerateMacVerifyMac 操作建立授予,這兩個操作是授予操作。然而,您不能在 HMAC 金鑰的授予中使用加密內容授予限制條件。HMAC 標籤格式不支援加密內容值。