本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
讓您的 AMI 公開可用於 Amazon EC2
您可以透過與所有 共用來公開AMI使用 AWS 帳戶。
如果您想要防止 的公開共用AMIs,您可以啟用 的封鎖公開存取AMIs。這會封鎖任何AMI公開的嘗試,協助防止未經授權的存取和潛在的AMI資料濫用。請注意,啟用區塊公有存取不會影響AMIs已公開可用的 ;它們仍然可公開使用。如需詳細資訊,請參閱了解 的封鎖公開存取 AMIs。
若要僅允許特定帳戶使用 AMI啟動執行個體,請參閱 AMI 與特定 AWS 帳戶共用。
考量事項
在AMI公開之前,請考慮下列事項。
-
擁有權 – 若要AMI公開,您的 AWS 帳戶 必須擁有 AMI。
-
區域 – AMIs 是區域資源。當您共用 時AMI,它只能在您共用它的區域中使用。若要在不同區域中AMI提供 ,AMI請將 複製到 區域,然後共用。如需詳細資訊,請參閱複製 Amazon EC2 AMI。
-
封鎖公開存取 – 若要公開共用 AMI,必須在AMI將公開共用 的每個區域中停用 的封鎖公開存取AMIs。公開共用 之後AMI,您可以重新啟用 的封鎖公開存取AMIs,以防止進一步公開共用您的 AMIs。
-
有些 AMIs 無法公開 – 如果您的 AMI包含下列其中一個元件,則您無法公開 (但您可以AMI與特定 共用 AWS 帳戶):
-
避免暴露敏感資料 – 為了避免在共用 時暴露敏感資料AMI,請閱讀 中的安全考量,建立共用 Linux 的建議 AMIs並遵循建議的動作。
-
用量 – 當您共用 時AMI,使用者只能從 啟動執行個體AMI。他們無法刪除、共用或修改它。不過,在他們使用您的 啟動執行個體之後AMI,就可以AMI從其啟動的執行個體建立 。
-
自動棄用 – 依預設,所有公有 的棄用日期AMIs都會設定為自AMI建立日期起兩年。您可將棄用日期設定為早於兩年。若要取消棄用日期,或將棄用移至較晚的日期,您必須僅與特定 共用,以 AWS 帳戶將其設為AMI私有。
-
移除過時 AMIs – 在公有 AMI到達其棄用日期後,如果AMI六個月或更長時間內沒有從 啟動新的執行個體, AWS 則 會移除公有共用屬性,以免過時AMIs出現在公有AMI清單中。
-
計費 – 當其他人使用 AWS 帳戶 啟動執行個體時AMI,您無須付費。使用 啟動執行個體的帳戶AMI會針對其啟動的執行個體收取費用。
AMI 與所有 AWS 帳戶共用 (公開共用)
公AMI有之後,可在 主控台的 社群AMIs中使用,您可以在EC2主控台左側導覽器的 AMI目錄或使用 主控台啟動執行個體時存取 。請注意,在公開之後, 可能需要一小段時間AMI才會出現在社群AMIs中。
- Console
-
- AWS CLI
-
每個 AMI 都有一個 launchPermission
屬性 AWS 帳戶,可控制擁有者的 以外,允許使用 AMI來啟動執行個體。透過修改 的 launchPermission
屬性AMI,您可以AMI公開 (將啟動許可授予所有 AWS 帳戶),或僅與指定的 AWS 帳戶 共用。
您可以從具有 啟動許可的帳戶IDs清單中新增或移除帳戶AMI。若要AMI公開,請指定 all
群組。您可同時指定公有和明確啟動許可。
若要AMI公開
-
使用 modify-image-attribute 命令,如下所示將all
群組新增至指定 的launchPermission
清單AMI。
aws ec2 modify-image-attribute \
--image-id ami-0abcdef1234567890
\
--launch-permission "Add=[{Group=all}]"
-
若要驗證 的啟動許可AMI,請使用 describe-image-attribute 命令。
aws ec2 describe-image-attribute \
--image-id ami-0abcdef1234567890
\
--attribute launchPermission
-
(選用) 若要再次AMI私有,請從啟動許可中移除all
群組。請注意, 的擁有者AMI一律具有啟動許可,因此不受此命令影響。
aws ec2 modify-image-attribute \
--image-id ami-0abcdef1234567890
\
--launch-permission "Remove=[{Group=all}]"
- PowerShell
-
每個 AMI 都有一個 launchPermission
屬性 AWS 帳戶,可控制擁有者的 以外,允許使用 AMI來啟動執行個體。透過修改 的 launchPermission
屬性AMI,您可以AMI公開 (將啟動許可授予所有 AWS 帳戶),或僅與指定的 AWS 帳戶 共用。
您可以從具有 啟動許可的帳戶IDs清單中新增或移除帳戶AMI。若要AMI公開,請指定 all
群組。您可同時指定公有和明確啟動許可。
若要AMI公開
-
使用 Edit-EC2ImageAttribute 命令,如下所示將all
群組新增至指定 的launchPermission
清單AMI。
PS C:\>
Edit-EC2ImageAttribute -ImageId ami-0abcdef1234567890
-Attribute launchPermission -OperationType add -UserGroup all
-
若要驗證 的啟動許可AMI,請使用下列 Get-EC2ImageAttribute 命令。
PS C:\>
Get-EC2ImageAttribute -ImageId ami-0abcdef1234567890
-Attribute launchPermission
-
(選用) 若要再次AMI私有,請從啟動許可中移除all
群組。請注意, 的擁有者AMI一律具有啟動許可,因此不受此命令影響。
PS C:\>
Edit-EC2ImageAttribute -ImageId ami-0abcdef1234567890
-Attribute launchPermission -OperationType remove -UserGroup all