管理 的區塊公有存取設定 AMIs - Amazon Elastic Compute Cloud

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

管理 的區塊公有存取設定 AMIs

您可以管理 的區塊公開存取設定AMIs,以控制是否可以公開共用。您可以使用 Amazon AMIs EC2主控台或 檢視 的目前區塊公有存取狀態 AWS CLI。

檢視 的區塊公有存取狀態 AMIs

若要查看帳戶中 的公有共用是否AMIs遭到封鎖,您可以檢視 封鎖公有存取的狀態AMIs。您必須檢視 AWS 區域 每個您要查看 的公有共用是否AMIs遭到封鎖的狀態。

所需的許可

若要取得 目前的區塊公有存取設定AMIs,您必須具有 GetImageBlockPublicAccessStateIAM許可。

Console
檢視AMIs指定區域中的 區塊公有存取狀態
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  2. 從導覽列 (畫面頂端),選取要檢視 區塊公有存取狀態的區域AMIs。

  3. 如果未顯示儀表板,請在導覽窗格中選擇EC2儀表板

  4. 帳户屬性下,選擇資料保護和安全性

  5. 封鎖 的公有存取AMIs下,檢查公有存取欄位。值可能是已封鎖新的公開共用,也可能是已允許新的公開共用

AWS CLI
若要取得 的區塊公有存取狀態 AMIs

使用 get-image-block-public-access-state 命令。

  • 對於特定區域

    aws ec2 get-image-block-public-access-state --region us-east-1

    預期的輸出結果 – 值為 block-new-sharingunblocked

    { "ImageBlockPublicAccessState": "block-new-sharing" }
  • 對於您帳戶中的所有區域

    echo -e "Region \t Public Access State" ; \ echo -e "-------------- \t ----------------------" ; \ for region in $( aws ec2 describe-regions \ --region us-east-1 \ --query "Regions[*].[RegionName]" \ --output text ); do (output=$( aws ec2 get-image-block-public-access-state \ --region $region \ --output text) echo -e "$region \t $output" ); done

    預期的輸出結果 – 值為 block-new-sharingunblocked

    Region Public Access State -------------- ---------------------- ap-south-1 block-new-sharing eu-north-1 unblocked eu-west-3 block-new-sharing ...
PowerShell
若要取得 的區塊公有存取狀態 AMIs

使用 Get-EC2ImageBlockPublicAccessState Cmdlet。

  • 對於特定區域

    Get-EC2ImageBlockPublicAccessState -Region us-east-1

    預期的輸出結果

    block-new-sharing
  • 對於您帳戶中的所有區域

    (Get-EC2Region).RegionName | ` ForEach-Object { [PSCustomObject]@{ Region = $_ PublicAccessState = (Get-EC2ImageBlockPublicAccessState -Region $_) } } | ` Format-Table -AutoSize

    預期的輸出結果

    Region PublicAccessState ------ ----------------- ap-south-1 block-new-sharing eu-north-1 block-new-sharing eu-west-3 block-new-sharing …

啟用 的封鎖公開存取 AMIs

若要防止公開共用您的 AMIs,AMIs請在帳戶層級啟用 的封鎖公開存取。您必須針對您要防止公開共用的每個 AMIs AWS 區域 啟用封鎖公開存取AMIs。如果您已有公有 AMIs,則它們將保持公開可用。

所需的許可

若要啟用 的區塊公有存取設定AMIs,您必須具有 EnableImageBlockPublicAccessIAM許可。

Console
在指定的區域中啟用 AMIs的封鎖公有存取
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  2. 從導覽列 (畫面頂端),選取要為 啟用封鎖公開存取的區域AMIs。

  3. 如果未顯示儀表板,請在導覽窗格中選擇EC2儀表板

  4. 帳户屬性下,選擇資料保護和安全性

  5. 封鎖 的公有存取權AMIs下,選擇管理

  6. 選取封鎖新的公開共用核取方塊,然後選擇更新

    注意

    最多API可能需要 10 分鐘才能設定此設定。在此期間,該值將是已允許新的公開共用。當 API 完成組態時,該值會自動變更為封鎖的新公有共用。

AWS CLI
啟用 的封鎖公有存取 AMIs

使用 enable-image-block-public-access 命令。

  • 對於特定區域

    aws ec2 enable-image-block-public-access \ --region us-east-1 \ --image-block-public-access-state block-new-sharing

    預期的輸出結果

    { "ImageBlockPublicAccessState": "block-new-sharing" }
  • 對於您帳戶中的所有區域

    echo -e "Region \t Public Access State" ; \ echo -e "-------------- \t ----------------------" ; \ for region in $( aws ec2 describe-regions \ --region us-east-1 \ --query "Regions[*].[RegionName]" \ --output text ); do (output=$( aws ec2 enable-image-block-public-access \ --region $region \ --image-block-public-access-state block-new-sharing \ --output text) echo -e "$region \t $output" ); done

    預期的輸出結果

    Region Public Access State -------------- ---------------------- ap-south-1 block-new-sharing eu-north-1 block-new-sharing eu-west-3 block-new-sharing ...
注意

最多API可能需要 10 分鐘才能設定此設定。在此期間,如果您執行 get-image-block-public-access-state 命令,回應將為 unblocked。當 API 完成組態時,回應將為 block-new-sharing

PowerShell
啟用 的封鎖公有存取 AMIs

使用 Enable-EC2ImageBlockPublicAccess命令。

  • 對於特定區域

    Enable-EC2ImageBlockPublicAccess ` -Region us-east-1 ` -ImageBlockPublicAccessState block-new-sharing

    預期的輸出結果

    Value ----- block-new-sharing
  • 對於您帳戶中的所有區域

    (Get-EC2Region).RegionName | ` ForEach-Object { [PSCustomObject]@{ Region = $_ PublicAccessState = ( Enable-EC2ImageBlockPublicAccess ` -Region $_ ` -ImageBlockPublicAccessState block-new-sharing) } } | ` Format-Table -AutoSize

    預期的輸出結果

    Region PublicAccessState ------ ----------------- ap-south-1 block-new-sharing eu-north-1 block-new-sharing eu-west-3 block-new-sharing …

停用 的封鎖公開存取 AMIs

若要允許帳戶中的使用者公開共用您的 AMIs,請在帳戶層級停用封鎖公開存取。您必須在 AWS 區域 您要允許公開共用 的每個 AMIs 中停用封鎖公開存取AMIs。

所需的許可

若要停用 的區塊公有存取設定AMIs,您必須具有 DisableImageBlockPublicAccessIAM許可。

Console
在指定區域中停用 AMIs的封鎖公有存取
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  2. 從導覽列 (畫面頂端),選取要停用 封鎖公開存取的區域AMIs。

  3. 如果未顯示儀表板,請在導覽窗格中選擇EC2儀表板

  4. 帳户屬性下,選擇資料保護和安全性

  5. 封鎖 的公有存取權AMIs下,選擇管理

  6. 清除封鎖新的公開共用核取方塊,然後選擇更新

  7. 出現確認提示時,請輸入 confirm,然後選擇允許公開共用

    注意

    最多API可能需要 10 分鐘才能設定此設定。在此期間,該值將是已封鎖新的公開共用。API 完成組態後,該值會自動變更為允許的新公有共用。

AWS CLI
停用 的封鎖公有存取 AMIs

使用 disable-image-block-public-access 命令。

  • 對於特定區域

    aws ec2 disable-image-block-public-access --region us-east-1

    預期的輸出結果

    { "ImageBlockPublicAccessState": "unblocked" }
  • 對於您帳戶中的所有區域

    echo -e "Region \t Public Access State" ; \ echo -e "-------------- \t ----------------------" ; \ for region in $( aws ec2 describe-regions \ --region us-east-1 \ --query "Regions[*].[RegionName]" \ --output text ); do (output=$( aws ec2 disable-image-block-public-access \ --region $region \ --output text) echo -e "$region \t $output" ); done

    預期的輸出結果

    Region Public Access State -------------- ---------------------- ap-south-1 unblocked eu-north-1 unblocked eu-west-3 unblocked ...
注意

最多API可能需要 10 分鐘才能設定此設定。在此期間,如果您執行 get-image-block-public-access-state 命令,回應將為 block-new-sharing。當 API 完成組態時,回應將為 unblocked

PowerShell
停用 的封鎖公有存取 AMIs

使用 Disable-EC2ImageBlockPublicAccess Cmdlet。

  • 對於特定區域

    Disable-EC2ImageBlockPublicAccess -Region us-east-1

    預期的輸出結果

    Value ----- unblocked
  • 對於您帳戶中的所有區域

    (Get-EC2Region).RegionName | ` ForEach-Object { [PSCustomObject]@{ Region = $_ PublicAccessState = (Disable-EC2ImageBlockPublicAccess -Region $_) } } | ` Format-Table -AutoSize

    預期的輸出結果

    Region PublicAccessState ------ ----------------- ap-south-1 unblocked eu-north-1 unblocked eu-west-3 unblocked …