控制對金鑰刪除的存取 - AWS Key Management Service

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

控制對金鑰刪除的存取

如果您使用 IAM 政策允許 AWS KMS 許可,則具有 AWS 管理員存取權限 ("Action": "*") 或 AWS KMS 完整存取權 ("Action": "kms:*") 的 IAM 身分都可以排程和取消 KMS 金鑰的金鑰刪除。若要允許金鑰管理員排程和取消金鑰政策中的金鑰刪除,請使用 AWS KMS 主控台或 AWS KMS API。

通常,只有金鑰管理員才有權排程或取消金鑰刪除。不過,您可以將 kms:ScheduleKeyDeletionkms:CancelKeyDeletion 許可新增至金鑰政策或 IAM 政策,從而將這些許可授予給其他 IAM 身分。您也可以使用kms:ScheduleKeyDeletionPendingWindowInDays條件鍵來進一步限制主參數可在ScheduleKeyDeletion請求PendingWindowInDays參數中指定的值。

允許金鑰管理員排程和取消金鑰刪除 (主控台)

將排程和取消金鑰刪除的許可授予給金鑰管理員。

  1. 請登入 AWS Management Console,並開啟 AWS Key Management Service (AWS KMS) 主控台 (網站:https://console.aws.amazon.com/kms)。

  2. 若要變更 AWS 區域,請使用頁面右上角的區域選取器。

  3. 在導覽窗格中,選擇 Customer managed keys (客戶受管金鑰)。

  4. 針對您要變更許可的 KMS 金鑰,選擇其別名或金鑰 ID。

  5. 選擇 Key policy (金鑰政策) 標籤。

  6. 金鑰政策的 default view (預設檢視) 和 policy view (政策檢視) 的下一步有所不同。只有當您使用預設的主控台金鑰政策時,才能使用預設檢視。否則,只能使用政策檢視。

    當預設檢視可用時,Switch to policy view (切換為政策檢視) 或 Switch to default view (切換為預設檢視) 按鈕顯示在 Key policy (金鑰政策) 索引標籤中。

    • 在預設檢視中:

      1. Key deletion (金鑰刪除) 下方,選擇 Allow key administrators to delete this key (允許金鑰管理員刪除此金鑰)。

    • 在政策檢視中:

      1. 選擇編輯

      2. 在金鑰管理員的政策陳述式中,將 kms:ScheduleKeyDeletionkms:CancelKeyDeletion 許可新增至 Action 元素。

        { "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSKeyAdmin"}, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion" ], "Resource": "*" }
      3. 選擇儲存變更

允許金鑰管理員許可,以排程和取消金鑰刪除 (AWS CLI)

您可以使用 AWS Command Line Interface來新增排程和取消金鑰刪除的許可。

若要新增排程和取消金鑰刪除的許可
  1. 使用 aws kms get-key-policy 命令擷取現有的金鑰政策,然後將政策文件儲存至檔案。

  2. 在您偏好的文字編輯器中開啟政策文件。在金鑰管理員的政策陳述式中,新增 kms:ScheduleKeyDeletionkms:CancelKeyDeletion 許可。以下範例顯示具有這兩個許可的政策陳述式:

    { "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSKeyAdmin"}, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion" ], "Resource": "*" }
  3. 使用 aws kms put-key-policy 命令將金鑰政策套用到 KMS 金鑰。