與指定的 AWS 帳戶共享 AMI - Amazon Elastic Compute Cloud

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

與指定的 AWS 帳戶共享 AMI

您可以與特定的 AMI 共享, AWS 帳戶 而無需公開 AMI。所有你需要的是 AWS 帳戶 ID。

AWS 帳戶 ID 是一個 12 位數的數字,例如012345678901,可唯一 AWS 帳戶識別. 如需詳細資訊,請參閱《AWS Account Management 參考指南》中的檢視 AWS 帳戶 識別符

考量事項

與特 AWS 帳戶定的共用 AMI 時,請考慮下列事項。

  • 擁有權 – 若要共用 AMI,您的 AWS 帳戶 必須擁有 AMI。

  • 共用限制 - 如需可在區域內共用 AMI 的最大實體數量,請參閱 Amazon EC2 服務配額

  • 標籤 – 您無法共用使用者定義的標籤 (連接至 AMI 的標籤)。當您共享 AMI 時,您的用戶定義標籤不適用於與 AMI 共享的任何 AWS 帳戶 標籤。

  • 加密和金鑰 – 您可以共用未加密和加密快照所支援的 AMI。

  • 區域 - AMI 是一種區域性的資源。當您共用 AMI 時,其只能在該區域中使用。若要讓 AMI 在其他區域可用,請將 AMI 複製到該區域,然後共用。如需詳細資訊,請參閱 複製 AMI

  • 使用 - 共享 AMI 後,使用者只能從 AMI 啟動執行個體。他們無法刪除、共用或修改它。不過,在使用您的 AMI 啟動了執行個體之後,他們可以從其執行個體建立 AMI。

  • 複製共享 AMI – 如果其他帳戶中的使用者想要複製共享 AMI,則必須向他們授予用於支援 AMI 的儲存的讀取許可。如需詳細資訊,請參閱 跨帳戶複製

  • 帳單 — 當其 AWS 帳戶 他人使用您的 AMI 啟動執行個體時,不會向您收取費用。使用 AMI 啟動執行個體的帳戶會根據它們啟動的執行個體計費。

共享 AMI (主控台)

使用主控台授予明確啟動許可
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 AMIs (AMI)。

  3. 在清單中選取您的 AMI,然後選取 Actions (動作)、Edit AMI permissions (編輯 AMI 許可)。

  4. 選擇 Private (私有)

  5. Shared accounts (共享帳戶) 中,選擇 Add account ID (新增帳戶 ID)。

  6. 針對 AWS 帳戶 ID,輸入您要與其共用 AMI 的 AWS 帳戶 ID,然後選擇 [共用 AMI]。

    若要與多個帳戶共用此 AMI,請重覆步驟 5 和 6,直到您新增了所有必要的帳戶 ID。

    注意

    共享 AMI 時,不需要共享 AMI 所參考的 Amazon EBS 快照。要共享的只有 AMI 本身;系統會自動為執行個體提供所參考 Amazon EBS 快照的存取,供其啟動。不過,您的確需要共享任何用來加密快照的 KMS 金鑰,而 AMI 會參考這些快照。如需詳細資訊,請參閱 Amazon EBS 使用者指南中的共用 Amazon EBS 快照

  7. 完成後,請選擇 Save changes (儲存變更)。

  8. (選擇性) 若要檢視與您共用 AMI 的 AWS 帳戶 ID,請在清單中選取 AMI,然後選擇權限索引標籤。若要尋找與您共用的 AMI,請參閱尋找共享 AMI

共用 AMI (AWS CLI)

使用 modify-image-attribute 命令 (AWS CLI) 來共用 AMI,如下列範例所示。

授予明確啟動許可

下列命令可向指定的 AWS 帳戶授予指定 AMI 的啟動許可。在下列範例中,以有效的 AMI 識別碼取代範例 AMI ID,並以 12 位數 AWS 帳戶 識別碼取代account-id

aws ec2 modify-image-attribute \ --image-id ami-0abcdef1234567890 \ --launch-permission "Add=[{UserId=account-id}]"
注意

共享 AMI 時,不需要共享 AMI 所參考的 Amazon EBS 快照。要共享的只有 AMI 本身;系統會自動為執行個體提供所參考 Amazon EBS 快照的存取,供其啟動。不過,您的確需要共享任何用來加密快照的 KMS 金鑰,而 AMI 會參考這些快照。如需詳細資訊,請參閱 Amazon EBS 使用者指南中的共用 Amazon EBS 快照

移除帳戶的啟動許可

下列命令可從指定的 AWS 帳戶移除指定 AMI 的啟動許可。在下列範例中,以有效的 AMI 識別碼取代範例 AMI ID,並以 12 位數 AWS 帳戶 識別碼取代account-id

aws ec2 modify-image-attribute \ --image-id ami-0abcdef1234567890 \ --launch-permission "Remove=[{UserId=account-id}]"
移除所有的啟動許可

下列命令可從指定的 AMI 移除所有的公有和明確啟動許可。請注意,AMI 擁有者始終具備啟動許可,因此不受此命令影響。在下列範例中,將範例 AMI ID 取代為有效的 AMI ID。

aws ec2 reset-image-attribute \ --image-id ami-0abcdef1234567890 \ --attribute launchPermission