與指定的 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。

    • 加密快照必須透過 KMS 金鑰進行加密。您無法共用透過預設 AWS 受管金鑰加密之快照支援的 AMI。如需詳細資訊,請參閱 共享 Amazon EBS 快照

    • 如果您共用加密快照所支援的 AMI,則必須允許 AWS 帳戶 使用 KMS 金鑰,而這些金鑰用來加密快照。如需詳細資訊,請參閱 允許組織和 OU 使用 KMS 金鑰。若要設定在使用客戶自管金鑰進行加密時啟動 Auto Scaling 執行個體所需的金鑰政策,請參閱《Amazon EC2 Auto Scaling 使用者指南》搭配加密磁碟區使用所需的 AWS KMS key 政策

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

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

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

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

共用 AMI (主控台)

New console
使用主控台授予明確啟動許可
  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,然後選擇 Share AMI (共用 AMI)。

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

    注意

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

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

  8. (選用) 若要檢視您與其共用 AMI 的 AWS 帳戶 ID,請從清單中選取 AMI,然後選取 Permissions (許可) 標籤。若要尋找與您共用的 AMI,請參閱尋找共享 AMI

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

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

  3. 從清單中選取 AMI,然後選取 Actions (動作)、Modify Image Permissions (修改映像許可)。

  4. AWS 帳戶號碼欄位中指定您想要與其共用 AMI 的使用者 AWS 帳戶 ID,然後選擇新增許可

    若要與多重使用者共享此 AMI,請重覆此步驟,直到新增所有需要的使用者。

    注意

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

  5. 完成後,選擇 Save (儲存)

  6. (選用) 若要檢視您與其共用 AMI 的 AWS 帳戶 ID,請從清單中選取 AMI,然後選取 Permissions (許可) 標籤。若要尋找與您共用的 AMI,請參閱尋找共享 AMI

共用 AMI (AWS CLI)

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

授予明確啟動許可

下列命令可向指定的 AWS 帳戶 授予指定 AMI 的啟動許可。在下列範例中,將範例 AMI ID 取代為有效的 AMI ID,並將 account-id 取代為 12 位數的 AWS 帳戶 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 快照

移除帳戶的啟動許可

下列命令可從指定的 AWS 帳戶 移除指定 AMI 的啟動許可。在下列範例中,將範例 AMI ID 取代為有效的 AMI ID,並將 account-id 取代為 12 位數的 AWS 帳戶 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