本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
驗證和授權請求
根據預設,目錄儲存貯體為私有,只有明確獲得存取權的使用者才能存取。目錄儲存貯體的存取控制界限只會在儲存貯體層級設定。相反地,一般用途儲存貯體的存取控制界限可在儲存貯體、字首或物件標籤層級設定。這個差異表示,目錄儲存貯體是唯一可以包含在儲存貯體政策或 IAM 身分政策中,以提供 S3 Express One Zone 存取權的資源。
Amazon S3 Express One Zone 同時支援 AWS Identity and Access Management (AWS IAM) 授權和工作階段型授權:
-
若要搭配 S3 Express One Zone 使用地區端點 API 操作 (儲存貯體層級或控制平面操作),您可以使用不涉及工作階段管理的 IAM 授權模型。動作的許可會個別授予。如需詳細資訊,請參閱使用 IAM 授權地區端點 API 操作。
-
若要使用
CopyObject
和HeadBucket
以外的區域端點 API 操作 (物件層級或資料平面操作),您可以使用CreateSession
API 操作來建立和管理工作階段,這些工作階段經過最佳化,可提供低延遲的資料請求授權。若要擷取和使用工作階段權杖,您必須在身分型政策或儲存貯體政策中允許目錄儲存貯體的s3express:CreateSession
動作。如需詳細資訊,請參閱使用 IAM 授權地區端點 API 操作。如果您在 Amazon S3 主控台、透過 AWS Command Line Interface (AWS CLI) 或使用 AWS SDKs 存取 S3 Express One Zone,S3 Express One Zone 會代表您建立工作階段。 Amazon S3
使用 CreateSession
API 操作,您可以透過新的工作階段型機制來驗證和授權請求。您可以使用 CreateSession
請求臨時憑證來提供低延遲的儲存貯體存取。這些臨時憑證的範圍會設為特定目錄儲存貯體。
若要使用 CreateSession
,建議您使用最新版本的 AWS SDKs或使用 AWS Command Line Interface (AWS CLI)。支援的 AWS SDKs 和控制 AWS CLI 代碼工作階段會代表您建立、重新整理和終止。
工作階段權杖只能搭配區域 (物件層級) 操作 (CopyObject
和 HeadBucket
除外) 使用,將與授權相關的延遲分散到工作階段中的數個請求。對於區域端點 API 操作 (儲存貯體層級操作),您可以使用不涉及管理工作階段的 IAM 授權。如需詳細資訊,請參閱使用 IAM 授權地區端點 API 操作及使用 CreateSession 授權區域端點 API 操作。
如何驗證和授權 API 操作
下表列出目錄儲存貯體 API 操作的驗證和授權資訊。下表顯示每個 API 操作的 API 操作名稱、IAM 政策動作、端點類型 (地區或區域),以及授權機制 (IAM 或工作階段型)。此表格也會指出是否支援跨帳戶存取權。儲存貯體層級動作的存取權只能在 IAM 身分型政策 (使用者或角色) 中授予,無法在儲存貯體政策中授予。
API | 端點類型 | IAM 動作 | 跨帳戶存取權 |
---|---|---|---|
CreateBucket |
區域性 | s3express:CreateBucket |
否 |
DeleteBucket |
區域性 | s3express:DeleteBucket |
否 |
ListDirectoryBuckets |
區域性 | s3express:ListAllMyDirectoryBuckets |
否 |
PutBucketPolicy |
區域性 | s3express:PutBucketPolicy |
否 |
GetBucketPolicy |
區域性 | s3express:GetBucketPolicy |
否 |
DeleteBucketPolicy |
區域性 | s3express:DeleteBucketPolicy |
否 |
CreateSession |
區域 | s3express:CreateSession |
是 |
CopyObject |
區域 | s3express:CreateSession |
是 |
DeleteObject |
區域 | s3express:CreateSession |
是 |
DeleteObjects |
區域 | s3express:CreateSession |
是 |
HeadObject |
區域 | s3express:CreateSession |
是 |
PutObject |
區域 | s3express:CreateSession |
是 |
RenameObject |
區域 | s3express:CreateSession |
否 |
GetObjectAttributes |
區域 | s3express:CreateSession |
是 |
ListObjectsV2 |
區域 | s3express:CreateSession |
是 |
HeadBucket |
區域 | s3express:CreateSession |
是 |
CreateMultipartUpload |
區域 | s3express:CreateSession |
是 |
UploadPart |
區域 | s3express:CreateSession |
是 |
UploadPartCopy |
區域 | s3express:CreateSession |
是 |
CompleteMultipartUpload |
區域 | s3express:CreateSession |
是 |
AbortMultipartUpload |
區域 | s3express:CreateSession |
是 |
ListParts |
區域 | s3express:CreateSession |
是 |
ListMultipartUploads |
區域 | s3express:CreateSession |
是 |
ListAccessPointsForDirectoryBuckets |
區域 | s3express:ListAccessPointsForDirectoryBuckets |
是 |
GetAccessPointScope |
區域 | s3express:GetAccessPointScope |
是 |
PutAccessPointScope |
區域 | s3express:PutAccessPointScope |
是 |
DeleteAccessPointScope |
區域 | s3express:DeleteAccessPointScope |
是 |