

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

# 目錄儲存貯體的安全最佳實務
<a name="s3-express-security-best-practices"></a>

使用目錄儲存貯體時，需要考慮一些安全功能。以下最佳實務為一般準則，並不代表完整的安全解決方案。這些最佳實務可能不適用或無法滿足您的環境需求，因此請將其視為實用建議就好，而不要當作是指示。

## 預設封鎖公開存取和物件擁有權設定
<a name="s3-express-security-best-practices-manage-access"></a>

 目錄儲存貯體支援 S3 封鎖公開存取和 S3 物件擁有權。這些 S3 功能可用來稽核和管理對儲存貯體和物件的存取權。

根據預設，目錄儲存貯體的所有封鎖公開存取設定都會啟用。此外，物件擁有權會設定為儲存貯體擁有者強制執行，這表示存取控制清單 (ACL) 已停用。這些設定無法修改。如需這些功能的詳細資訊，請參閱 [封鎖對 Amazon S3 儲存體的公開存取權](access-control-block-public-access.md) 和 [控制物件的擁有權並停用儲存貯體的 ACL](about-object-ownership.md)。

**注意**  
您無法授予存放在目錄儲存貯體中的物件存取權。您只能授予目錄儲存貯體的存取權。S3 Express One Zone 的授權模式與 Amazon S3 的授權模式不同。如需詳細資訊，請參閱[使用 `CreateSession` 授權區域端點 API 操作](s3-express-create-session.md)。

## 身分驗證和授權
<a name="s3-express-security-best-practices-create-session"></a>

目錄儲存貯體的身分驗證和授權機制會根據您對區域 端點 API 操作還是地區端點 API 操作發出請求而有所不同。區域 (Zone) API 操作是物件層級（資料平面）操作。區域 (Region) API 操作是儲存貯體層級 (控制平面) 操作。

您可以透過新的工作階段型機制來驗證和授權對區域端點 API 操作的請求，``此機制經過最佳化，可提供最低延遲。透過工作階段型身分驗證， AWS SDKs 會使用 `CreateSession` API 操作``來請求臨時憑證，以提供目錄儲存貯體的低延遲存取。這些臨時憑證的範圍會設為特定目錄儲存貯體，並於 5 分鐘後過期。您可以使用這些臨時憑證來簽署區域 (物件層級) API 呼叫。如需詳細資訊，請參閱[使用 `CreateSession` 授權區域端點 API 操作](s3-express-create-session.md)。

**使用目錄儲存貯體管理憑證簽署請求**  
您可以使用 登入資料，以 AWS Signature 第 4 版簽署區域端點 （物件層級） API 請求，並以 `s3express`做為服務名稱。當您簽署請求時，請使用從 `CreateSession` 傳回的秘密金鑰，同時提供具有 `x-amzn-s3session-token header` 的工作階段權杖。如需詳細資訊，請參閱[https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html)。

[支援的 AWS SDK](s3-express-SDKs.md#s3-express-getting-started-accessing-sdks) 可管理憑證並代表您進行簽署。我們建議您使用 AWS SDKs來重新整理登入資料並為您簽署請求。

**使用 IAM 憑證簽署請求**  
所有區域 (儲存貯體層級) API 呼叫都必須透過 AWS Identity and Access Management (IAM) 憑證進行驗證和簽署，而非臨時工作階段憑證。IAM 憑證包含 IAM 身分的存取金鑰 ID 和私密存取金鑰。所有 `CopyObject` 和 `HeadBucket` 請求也都必須使用 IAM 憑證進行驗證和簽署。

為了讓區域 (物件層級) 操作呼叫達到最低延遲，建議您使用透過呼叫 `CreateSession` 取得的憑證來簽署請求，但不包括 `CopyObject` 和 `HeadBucket` 請求。

## 使用 AWS CloudTrail
<a name="s3-express-security-best-practices-cloudtrail"></a>

AWS CloudTrail 提供 Amazon S3 中使用者、角色或 AWS 服務 所採取動作的記錄。您可以使用 CloudTrail 收集的資訊來判斷下列項目：
+ 對 Amazon S3 提出的請求
+ 提出請求的 IP 位址
+ 提出要求的人員
+ 提出請求的時間
+ 有關請求的其他詳細資訊

當您設定 時 AWS 帳戶，預設會啟用 CloudTrail 管理事件。下列區域端點 API 操作 (儲存貯體層級，也稱為控制平面 API 操作) 會記錄到 CloudTrail。
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListDirectoryBuckets.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListDirectoryBuckets.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html)

**注意**  
`ListMultipartUploads` 是區域端點 API 操作。不過，這會記錄到 CloudTrail 作為管理事件。如需詳細資訊，請參閱 Amazon Simple Storage Service API 參考**中的 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)。

根據預設，CloudTrail 追蹤不會記錄資料事件，但您可以設定追蹤來記錄您指定之目錄儲存貯體的資料事件，或記錄您 AWS 帳戶中所有目錄儲存貯體的資料事件。下列區域端點 API 操作 (物件層級或資料平面 API 操作) 會記錄到 CloudTrail。
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjects.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjects.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)

 如需搭配目錄儲存貯體使用 AWS CloudTrail 的詳細資訊，請參閱[針對目錄儲存貯體使用 AWS CloudTrail 進行記錄](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone-cloudtrail-logging.html)。

### 使用監控工具實作 AWS 監控
<a name="s3-express-security-best-practices-monitoring"></a>

監控是維護 Amazon S3 和您 AWS 解決方案的可靠性、安全性、可用性和效能的重要部分。 AWS 提供多種工具和服務，可協助您監控 Amazon S3 和其他項目 AWS 服務。例如，您可以監控 Amazon S3 的 Amazon CloudWatch 指標，特別是 `BucketSizeBytes` 和 `NumberOfObjects` 儲存指標。

儲存在目錄儲存貯體中的物件不會反映在 Amazon S3 的 `BucketSizeBytes` 和 `NumberOfObjects` 儲存指標中。不過，目錄儲存貯體支援 `BucketSizeBytes` 和 `NumberOfObjects` 儲存指標。若要查看您選擇的指標，您可以指定 `StorageType` 維度來區分 Amazon S3 儲存類別。如需詳細資訊，請參閱[使用 Amazon CloudWatch 監控指標](cloudwatch-monitoring.md)。

如需詳細資訊，請參閱[使用 Amazon CloudWatch 監控指標](cloudwatch-monitoring.md)及[在 Amazon S3 中記錄和監控](monitoring-overview.md)。