本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 APIs 授權區域端點 IAM
AWS Identity and Access Management (IAM) 是一種 AWS 服務 ,可協助管理員安全地控制對 AWS 資源的存取。IAM 管理員可控制誰可以進行身分驗證 (登入) 和授權 (具有許可),以在 Amazon S3 S3 資源。您可以使用 IAM,無需額外費用。
根據預設,使用者未具備執行目錄儲存貯體和 S3 Express One Zone 操作的許可。若要授予目錄儲存貯體的存取許可,您可以使用 IAM 來建立使用者、群組或角色,並將許可連接到這些身分。如需 IAM 的詳細資訊,請參閱 IAM 使用者指南中的 Word 中的安全最佳實務。 IAM
若要提供存取權,您可以透過下列方式新增許可至您的使用者、群組或角色:
-
中的使用者和群組 AWS IAM Identity Center – 建立許可集。請按照 AWS IAM Identity Center 使用者指南 中的 建立權限合集 說明進行操作。
-
透過身分提供者在 IAM 中管理的使用者 – 建立身分聯合的角色。請遵循 IAM 使用者指南中為第三方身分提供者 (聯合) 建立角色的指示。
-
IAM 角色和使用者 – 建立使用者可擔任的角色。請遵循 IAM 使用者指南中的建立角色以將許可委派給 Word 使用者中的指示。 IAM
如需 IAM for S3 Express One Zone 的詳細資訊,請參閱下列主題。
主體
當您建立資源型政策以授予儲存貯體的存取權時,您必須使用 Principal
元素來指定可對該資源提出動作或操作請求的人員或應用程式。對於目錄儲存貯體政策,您可以使用下列主體:
-
AWS 帳戶
-
IAM 使用者
-
IAM 角色
-
聯合身分使用者
如需詳細資訊,請參閱 Principal (在 IAM 使用者指南中)
資源
目錄儲存貯體的 Amazon Resource Names (ARNs) 包含s3express
命名空間、 AWS 區域、 AWS 帳戶 ID 和目錄儲存貯體名稱,其中包含可用區域 ID。若要存取目錄儲存貯體並對其執行動作,您必須使用下列 ARN 格式:
arn:aws:s3express:
region
:account-id
:bucket/base-bucket-name
--zone-id
--x-s3
如需 ARNs 的詳細資訊,請參閱 Amazon Resource Names (ARNs) (在 IAM 使用者指南中) 如需 資源的詳細資訊,請參閱 JSONIAM 政策元素:Resource (在 IAM 使用者指南中)
目錄儲存貯體的動作
在 IAM 身分型政策或資源型政策中,您可以定義允許或拒絕哪些 S3 動作。動作對應至特定的 API 操作。使用目錄儲存貯體時,您可以使用 S3 Express One Zone 命名空間來授予許可。這個命名空間是 s3express
。
當您允許 s3express:CreateSession
許可時,這可讓 API CreateSession
操作在存取 Zonal 端點 API (或物件層級) 操作時擷取工作階段權杖。這些工作階段權杖會傳回用來授予所有其他區域端點 API 操作存取權的憑證。因此,您不必使用 API 政策授予 Zonal IAM 操作的存取許可。而是由工作階段權杖啟用存取權。如需區域端點 API 操作和許可的清單,請參閱驗證和授權請求。
如需區域和區域端點 API 操作的詳細資訊,請參閱 目錄儲存貯體的網路。若要進一步了解 API CreateSession
操作,請參閱 CreateSession 在 Amazon Simple Storage Service API 參考中。
您可以在 IAM 政策陳述式的 Action
元素中指定下列動作。使用政策來授予在 AWS中執行操作的許可。當您在政策中使用動作時,通常會允許或拒絕使用相同名稱存取 API 操作。不過,在某些情況下,單一動作會控制對多個 API 操作的存取。只能在 IAM 身分型政策 (使用者或角色) 中授予對儲存貯體層級動作的存取權,而不是在儲存貯體政策中授予。
下表顯示動作和條件索引鍵。
動作 | API | 描述 | 存取層級 | 條件索引鍵 |
---|---|---|---|---|
s3express:CreateBucket
|
CreateBucket |
授予許可來建立新儲存貯體。 |
寫入 |
|
s3express:CreateSession |
區域端點 API 操作 |
准許建立工作階段權杖,用於授予所有區域 (物件層級) API 操作的存取權,例如 |
寫入 |
|
s3express:DeleteBucket |
DeleteBucket |
准許刪除 URI 中名為 的儲存貯體。 |
寫入 |
|
s3express:DeleteBucketPolicy |
DeleteBucketPolicy |
授予許可,以在所指定的儲存貯體上刪除政策。 |
許可管理 |
|
s3express:GetBucketPolicy |
GetBucketPolicy |
授予許可來傳回所指定儲存貯體的政策。 |
讀取 |
|
s3express:GetEncryptionConfiguration |
GetBucketEncryption |
准許傳回目錄儲存貯體的預設加密組態。 |
讀取 |
|
s3express:ListAllMyDirectoryBuckets |
ListDirectoryBuckets |
授予許可來列出已驗證的請求發送者擁有的所有目錄儲存貯體。 |
清單 |
|
s3express:PutBucketPolicy |
PutBucketPolicy |
授予許可來新增或取代儲存貯體上的儲存貯體政策。 |
許可管理 |
|
s3express:PutBucketPolicy |
PutBucketPolicy |
授予許可來新增或取代儲存貯體上的儲存貯體政策。 |
許可管理 |
|
s3express:PutEncryptionConfiguration |
PutBucketEncryption 或 DeleteBucketEncryption |
准許設定目錄儲存貯體的加密組態 |
寫入 |
|
目錄儲存貯體的條件索引鍵
以下是可用於 IAM 政策Condition
元素的條件索引鍵。您可以使用這些索引鍵來縮小套用政策陳述式的條件。
條件金鑰 | Description (描述) | Type |
---|---|---|
s3express:authType |
依身分驗證方法篩選存取權。若要限制傳入請求使用特定身分驗證方法,您可以使用此可選條件金鑰。例如,您可以使用此條件金鑰,僅允許在請求身分驗證中使用 HTTP 有效值: |
字串 |
s3express:LocationName |
依特定可用區域 ID 範例值: |
字串 |
s3express:ResourceAccount |
依資源擁有者的 AWS 帳戶 ID 篩選存取權。 若要限制使用者、角色或應用程式對特定 AWS 帳戶 ID 所擁有目錄儲存貯體的存取權,您可以使用 範例值: |
字串 |
s3express:SessionMode |
根據 API 有效值: |
字串 |
s3express:signatureAge |
依請求簽章的存在時間篩選存取權 (以毫秒為單位)。此條件僅適用於預先簽章的 URLs。 在 AWS Signature 第 4 版中,簽署金鑰的有效期最長為七天。因此,簽章的有效期限也是最長七天。如需詳細資訊,請參閱 Amazon Simple Storage Service API 參考中的簽署請求簡介。您可以使用此條件來進一步限制簽章存留期。 範例值: |
數值 |
s3express:signatureversion |
識別您要支援已驗證請求的 AWS Signature 版本。對於已驗證的請求,支援 Signature 第 4 版。 有效值: |
字串 |
s3express:TlsVersion |
依用戶端使用的 TLS 版本篩選存取權。 您可以使用 範例值: |
數值 |
s3express:x-amz-content-sha256 |
依儲存貯體中未簽署的內容篩選存取權。 您可以使用此條件金鑰以不允許在儲存貯體中未簽署的內容。 當您使用第 4 版簽署程序時,針對使用 您可以在儲存貯體政策中使用此條件索引鍵,拒絕任何尚未簽署承載的上傳項目。例如:
有效值: |
字串 |
s3express:x-amz-server-side-encryption |
依伺服器端加密篩選存取權 有效值: |
字串 |
s3express:x-amz-server-side-encryption-aws-kms-key-id |
依 AWS KMS 客戶受管金鑰篩選存取權以進行伺服器端加密 範例值: |
ARN |