

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

# 為您的帳戶設定封鎖公開存取
<a name="configuring-block-public-access-account"></a>

**重要**  
如果您的帳戶是由組織層級的封鎖公開存取政策管理，則您無法修改這些帳戶層級設定。組織層級政策會覆寫帳戶層級組態。如需集中式管理選項的詳細資訊，請參閱*AWS Organizations 《 使用者指南*》中的 [S3 政策](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_s3.html)。

Amazon S3 Block Public Access 提供存取點、儲存貯體、組織和帳戶的設定，協助您管理對 Amazon S3 資源的公開存取。依預設，新的儲存貯體、存取點和物件不允許公開存取。如需詳細資訊，請參閱[封鎖對 Amazon S3 儲存體的公開存取權](access-control-block-public-access.md)。

**注意**  
帳戶層級設定會覆寫個別物件上的設定。將您的帳戶設定為封鎖公開存取，將會覆寫對帳戶內個別物件所做的任何公開存取設定。當組織層級政策處於作用中狀態時，帳戶層級設定會自動繼承自組織政策，且無法直接修改。

您可以使用 S3 主控台、 AWS CLI、 AWS SDKs和 REST API，在非由組織政策管理時，設定您帳戶中所有儲存貯體的封鎖公開存取設定。如需詳細資訊，請參閱「以下各節」。

若要設定儲存貯體的封鎖公開存取設定，請參閱 [為您的 S3 儲存貯體設定封鎖公開存取](configuring-block-public-access-bucket.md)。如需存取點的詳細資訊，請參閱 [在存取點執行封鎖公開存取操作](access-control-block-public-access.md#access-control-block-public-access-examples-access-point)。

## 使用 S3 主控台
<a name="block-public-access-account"></a>

Amazon S3 封鎖公開存取可防止套用任何設定而允許公開存取 S3 儲存貯體內的資料。本節說明如何編輯 AWS 帳戶中所有 S3 儲存貯體的封鎖公開存取設定。如需封鎖公開存取的詳細資訊，請參閱 [封鎖對 Amazon S3 儲存體的公開存取權](access-control-block-public-access.md)。

**編輯 中所有 S3 儲存貯體的封鎖公開存取設定 AWS 帳戶**

1. 登入 AWS 管理主控台 ，並在 [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)：// 開啟 Amazon S3 主控台。

1. 選擇 **Block Public Access settings for this account** (此帳戶的封鎖公開存取設定)。

1. 選擇 **Edit** (編輯) 以變更 AWS 帳戶中所有儲存貯體的封鎖公開存取設定。

1. 選擇您要變更的設定，然後選擇 **Save changes** (儲存變更)。

1. 出現確認提示時，輸入 **confirm**。然後選擇 **Confirm** (確認) 以儲存變更。

如果您收到錯誤訊息，指出「此帳戶不允許由於組織 S3 封鎖公開存取政策生效而變更其帳戶層級 S3 封鎖公開存取設定」，您的帳戶由組織層級政策管理。請聯絡您的組織管理員以修改這些設定。

## 使用 AWS CLI
<a name="access-control-block-public-access-examples-cli"></a>

您可以透過 AWS CLI使用 Amazon S3 封鎖公開存取。如需設定和使用 的詳細資訊 AWS CLI，請參閱[什麼是 AWS Command Line Interface？](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) 

**帳戶**
+ 若要在帳戶上執行封鎖公開存取操作，請使用 AWS CLI 服務 `s3control`。使用此服務的帳戶層級操作如下：
  + `PutPublicAccessBlock` (適用於帳戶)
  + `GetPublicAccessBlock` (適用於帳戶)
  + `DeletePublicAccessBlock` (適用於帳戶)

**注意**  
`PutPublicAccessBlock` 當帳戶由組織層級政策管理時， 和 `DeletePublicAccessBlock`操作將傳回「存取遭拒」錯誤。如果存在，帳戶層級`GetPublicAccessBlock`操作將傳回強制執行的組織層級政策。

如需其他資訊和範例，請參閱《AWS CLI 參考》**中的 [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3control/put-public-access-block.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3control/put-public-access-block.html)。

## 使用 AWS SDKs
<a name="access-control-block-public-access-examples-sdk"></a>

------
#### [ Java ]

下列範例示範如何使用 Amazon S3 Block Public Access 搭配 適用於 Java 的 AWS SDK ，在 Amazon S3 帳戶上放置公有存取區塊組態。

**注意**  
`PutPublicAccessBlock` 如果帳戶是由組織層級政策管理，則 和 `DeletePublicAccessBlock`操作將會失敗，並出現「存取遭拒」錯誤。

```
AWSS3ControlClientBuilder controlClientBuilder = AWSS3ControlClientBuilder.standard();
controlClientBuilder.setRegion({{<region>}});
controlClientBuilder.setCredentials({{<credentials>}});
					
AWSS3Control client = controlClientBuilder.build();
client.putPublicAccessBlock(new PutPublicAccessBlockRequest()
		.withAccountId({{<account-id>}})
		.withPublicAccessBlockConfiguration(new PublicAccessBlockConfiguration()
				.withIgnorePublicAcls({{<value>}})
				.withBlockPublicAcls({{<value>}})
				.withBlockPublicPolicy({{<value>}})
				.withRestrictPublicBuckets({{<value>}})));
```

**重要**  
此範例僅適用於帳戶層級操作，這類操作會使用 `AWSS3Control` 用戶端類別。針對儲存貯體層級操作，請參閱先前的範例。

------
#### [ Other SDKs ]

如需使用其他 AWS SDKs的資訊，請參閱《[Amazon S3 API 參考》中的使用 AWS SDKs 與 Amazon S3 一起開發](https://docs.aws.amazon.com/AmazonS3/latest/API/sdk-general-information-section.html)。 *Amazon S3 *

------

## 使用 REST API
<a name="access-control-block-public-access-examples-api"></a>

如需有關透過 REST API 使用 Amazon S3 封鎖公開存取的資訊，請參閱《Amazon Simple Storage Service API 參考》**中的下列主題。
+ 帳戶層級操作
  + [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html) - 當帳戶由組織政策管理時失敗
  + [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html) - 傳回有效的組態，包括組織政策。
  + [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html) - 當帳戶由組織政策管理時失敗。

您會看到以下限制操作的錯誤訊息：「由於組織 S3 封鎖公開存取政策生效，此帳戶不允許變更其帳戶層級的 S3 封鎖公開存取設定。」