

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

# 檢視 Amazon EBS 快照的封鎖公開存取設定
<a name="block-public-access-snapshots-view"></a>

針對帳戶中的每個區域，封鎖公開存取設定可能處於下列其中一個狀態。
+ **封鎖所有共用**：快照的所有公開共用都會遭到封鎖。帳戶使用者無法請求新的公開共用。此外，已公開共用的快照會被視為私有快照，不開放公開使用。
+ **封鎖新共用**：只有快照的新公開共用會遭到封鎖。帳戶使用者無法請求新的公開共用。但是已公開共用的快照仍會維持開放公開使用。
+ **解除封鎖**：不會封鎖公開共用。使用者可以公開共用快照。

------
#### [ Console ]

**檢視快照的封鎖公開存取設定**

1. 前往 [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) 開啟 Amazon EC2 主控台。

1. 在導覽窗格中，選擇 **EC2 儀表板**，然後在**帳戶屬性** (右側) 中選擇**資料保護和安全性**。

1. **EBS 快照的封鎖公開存取**區段會顯示目前的設定。

------
#### [ AWS CLI ]

**檢視快照的封鎖公開存取設定**  
使用 [get-snapshot-block-public-access-state](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-snapshot-block-public-access-state.html) 命令。
+ 對於特定區域

  ```
  aws ec2 get-snapshot-block-public-access-state
  ```

  在此範例輸出中， `ManagedBy` 欄位指出設定 設定的實體，並`account`指出直接在帳戶中設定 設定。值為 `declarative-policy` 表示設定是透過宣告式政策來配置。如需詳細資訊，請參閱「AWS Organizations 使用者指南」**中的[宣告式政策](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_declarative.html)。

  ```
  {
      "State": "unblocked",
      "ManagedBy": "account"
  }
  ```
+ 對於所有區域

  ```
  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-snapshot-block-public-access-state \
              --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
  ```

------
#### [ PowerShell ]

**檢視快照的封鎖公開存取設定**  
使用 [ Get-EC2SnapshotBlockPublicAccessState](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2SnapshotBlockPublicAccessState.html) cmdlet。
+ 對於特定區域

  ```
  Get-EC2SnapshotBlockPublicAccessState -Region us-east-1
  ```

  以下為範例輸出。

  ```
  Value
  -----
  block-new-sharing
  ```
+ 對於所有區域

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

  以下為範例輸出。

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

------