共享 Amazon EBS 快照 - Amazon EBS

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

共享 Amazon EBS 快照

您可以修改快照的許可,與其他 AWS 帳戶共用快照。您可以與所有其他 AWS 帳戶公開共享快照,也可以與您指定的個別 AWS 帳戶私下共用快照。您授權的使用者可使用您共用的快照,以建立他們自己的 EBS 磁碟區,同時原始快照仍然不受影響。

重要

當您共用快照時,即向其他人授予快照上所有資料的存取權。僅與您信任的人共用快照,共用所有快照資料。

若要阻止公開共用快照,您可以啟用快照的封鎖公開存取。如需詳細資訊,請參閱封鎖 AMI 的公開存取

共用快照之前

共用快照時有下列考量:

  • 如果針對特定區域啟用快照的封鎖公開存取功能,只要嘗試公開共用快照就會遭到封鎖。快照仍可供私下分享。

  • 快照受限於其建立的區域。若要與另一個區域共用快照,請將該快照複製到該區域,然後共用。如需詳細資訊,請參閱 複製 Amazon EBS 快照

  • 您無法共用透過預設 AWS 受管金鑰加密的快照。您只能共用透過客戶受管金鑰加密的快照。如需詳細資訊,請參閱AWS Key Management Service 開發人員指南中的 建立金鑰

  • 您只能公開共用未加密的快照。

  • 當您共用加密快照時,您也必須共用加密該快照時所用的客戶受管金鑰。如需詳細資訊,請參閱 共用 KMS 金鑰

共享快照

您可以使用本節中描述的其中一種方法來共用快照。

Console
共用快照
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇快照

  3. 選取要共用的快照,然後選取 Actions (動作)、Modify permissions (修改許可)。

  4. 指定快照的許可。目前設定指出快照目前的共用許可。

    • 若要與所有 AWS 帳戶公開共用快照,請選擇 [開]。

    • 若要私下與特定 AWS 帳戶共用快照,請選擇 [私人]。然後,在 Sharing accounts (共用帳戶) 區段中,選擇 Add account (新增帳戶),並輸入帳戶的 12 位數帳戶 ID (無連字號) 以開始。

  5. 選擇儲存變更

AWS CLI

快照的許可是使用快照的 createVolumePermission 屬性指定。若要將快照公開,請將群組設為 all。若要與特定 AWS 帳戶共用快照,請將使用者設定為 AWS 帳戶的 ID。

公開共用快照

使用 modify-snapshot-attribute 命令。

--attribute,請指定 createVolumePermission。在 --operation-type,請指定 add。在 --group-names,請指定 all

$ aws ec2 modify-snapshot-attribute --snapshot-id 1234567890abcdef0 --attribute createVolumePermission --operation-type add --group-names all
私下共用快照

使用 modify-snapshot-attribute 命令。

--attribute,請指定 createVolumePermission。在 --operation-type,請指定 add。在中--user-ids,指定要與其共用快照的 AWS 帳戶的 12 位數 ID。

$ aws ec2 modify-snapshot-attribute --snapshot-id 1234567890abcdef0 --attribute createVolumePermission --operation-type add --user-ids 123456789012
Tools for Windows PowerShell

快照的許可是使用快照的 createVolumePermission 屬性指定。若要將快照公開,請將群組設為 all。若要與特定 AWS 帳戶共用快照,請將使用者設定為 AWS 帳戶的 ID。

公開共用快照

使用 Edit-EC2SnapshotAttribute 命令。

-Attribute,請指定 CreateVolumePermission。在 -OperationType,請指定 Add。在 -GroupName,請指定 all

PS C:\> Edit-EC2SnapshotAttribute -SnapshotId 1234567890abcdef0 -Attribute CreateVolumePermission -OperationType Add -GroupName all
私下共用快照

使用 Edit-EC2SnapshotAttribute 命令。

-Attribute,請指定 CreateVolumePermission。在 -OperationType,請指定 Add。在中UserId,指定要與其共用快照的 AWS 帳戶的 12 位數 ID。

PS C:\> Edit-EC2SnapshotAttribute -SnapshotId 1234567890abcdef0 -Attribute CreateVolumePermission -OperationType Add -UserId 123456789012

共用 KMS 金鑰

當您共用加密快照時,您也必須共用加密該快照時所用的客戶受管金鑰。您可以在建立客戶受管金鑰時,為其套用跨帳戶許可,或之後再套用。

存取加密快照的共用客戶受管金鑰使用者必須獲得許可,才可對金鑰執行下列動作:

  • kms:DescribeKey

  • kms:CreateGrant

  • kms:GenerateDataKey

  • kms:GenerateDataKeyWithoutPlaintext

  • kms:ReEncrypt

  • kms:Decrypt

提示

若要遵循最低權限原則人,請勿允許 kms:CreateGrant 的完整存取。而是使用kms:GrantIsForAWSResource條件金鑰,只有在 AWS 服務代表使用者建立授權時,才允許使用者在 KMS 金鑰上建立授權。

如需控制客戶受管金鑰存取的詳細資訊,請參閱 AWS KMS開發人員指南中的在AWS Key Management Service 中使用金鑰政策

使用 AWS KMS 主控台共用客戶管理金鑰
  1. 請在以下位置開啟 AWS KMS 主控台。 https://console.aws.amazon.com/kms

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

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

  4. (Alias) 別名資料欄中,選擇用來加密快照的客戶管理金鑰別名 (文字連結)。重要詳細資料會在新頁面開啟。

  5. Key policy (金鑰政策) 區段中,您會看到 policy view (政策檢視)default view (預設檢視)。原則檢視會顯示重要的政策文件。預設檢視會顯示 Key administrators (金鑰管理員)、Key deletion (金鑰刪除)、Key Use (金鑰使用) 和 Other AWS accounts (其他 AWS 帳戶) 的區段。如果已在主控台中建立政策,但尚未自訂政策,則會顯示預設檢視。如果無法使用預設檢視,則需要在政策檢視中手動編輯政策。如需詳細資訊,請參閱AWS Key Management Service 開發人員指南中的 檢視金鑰政策 (主控台)

    使用策略檢視或預設檢視 (視您可存取的檢視而定) 將一或多個 AWS 帳號 ID 新增至策略,如下所示:

    • (政策檢視) 選擇 Edit (編輯)。將一或多個 AWS 帳號 ID 新增至下列陳述式:"Allow use of the key""Allow attachment of persistent resources"。選擇儲存變更。在下列範例中, AWS 帳號 ID 444455556666 會新增至策略。

      { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::111122223333:user/KeyUser", "arn:aws:iam::444455556666:root" ]}, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::111122223333:user/KeyUser", "arn:aws:iam::444455556666:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} }
    • (預設檢視) 向下捲動至 [其他 AWS 帳戶]。選擇 [新增其他 AWS 帳戶],然後根據提示輸入 AWS 帳戶 ID。若要新增其他帳戶,請選擇 [新增其他 AWS 帳戶],然後輸入 AWS 帳號 ID。新增所有 AWS 帳戶之後,選擇 Save changes (儲存變更)。

檢視與您共用的快照

可以使用下列其中一種方法來檢視與您共用的快照。

Console
若要使用主控台檢視共用快照
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 Snapshots (快照)

  3. 篩選列出的快照。在螢幕左上角,選擇下列其中一個選項:

    • 私有快照 – 僅檢視私下與您共用的快照。

    • 公有快照 – 僅檢視公開與您共用的快照。

AWS CLI
使用命令列檢視快照許可

使用 describe-snapshot-attribute 命令。

Tools for Windows PowerShell
使用命令列檢視快照許可

使用 Get-EC2SnapshotAttribute 命令。

檢視與您共用的快照

若要使用共用的未加密快照

依 ID 或描述來尋找共用快照。如需詳細資訊,請參閱 檢視與您共用的快照。您可以使用此快照,就像您在帳戶中擁有的任何其他快照一樣。例如,您可以從快照中建立磁碟區,或將其複製到不同區域。

若要使用共用的加密快照

依 ID 或描述來尋找共用快照。如需詳細資訊,請參閱 檢視與您共用的快照。在您的帳戶中建立共用快照的複本,並使用您擁有的 KMS 金鑰對複本加密。然後,可以使用該複本來建立磁碟區,或者將其複製到不同的區域。

決定使用您共用的快照

您可以用 AWS CloudTrail 來監視您與其他人共用的快照是否複製或使用來建立磁碟區。會記錄下列事件 CloudTrail:

  • SharedSnapshotCopyInitiated— 正在複製共用快照。

  • SharedSnapshotVolumeCreated— 正在使用共用快照建立磁碟區。

如需使用的詳細資訊 CloudTrail,請參閱使用日誌記錄亞馬 Amazon EC2 和 Amazon EBS API 呼叫。 AWS CloudTrail