本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用由 S3 存取授權提供的憑證來存取 S3 資料
承授者透過其存取授權取得臨時憑證後,可以使用這些臨時憑證呼叫 Amazon S3 API 操作來存取您的資料。
承授者可以使用 S3 AWS Command Line Interface (AWS CLI)、 AWS SDKs 和 Amazon S3 REST API 存取 S3 資料。此外,您可以使用 AWS Python
承授者從 S3 Access Grants 取得其臨時憑證後,就可以設定包含這些憑證的設定檔來擷取資料。
若要安裝 AWS CLI,請參閱AWS Command Line Interface 《 使用者指南》中的安裝 AWS CLI 。
若要使用下列範例命令,請將
取代為您自己的資訊。user input
placeholders
範例 – 設定設定檔
aws configure set aws_access_key_id "
$accessKey
" --profileaccess-grants-consumer-access-profile
aws configure set aws_secret_access_key "$secretKey
" --profileaccess-grants-consumer-access-profile
aws configure set aws_session_token "$sessionToken
" --profileaccess-grants-consumer-access-profile
若要使用下列範例命令,請以您自己的資訊取代
。user input
placeholders
範例 – 取得 S3 資料
承授者可以使用 get-object AWS CLI 命令來存取資料。承授者也可以使用 put-object、 ls和其他 S3 AWS CLI 命令。
aws s3api get-object \ --bucket
amzn-s3-demo-bucket1
\ --keymyprefix
\ --regionus-east-2
\ --profileaccess-grants-consumer-access-profile
本節提供承授者如何使用 AWS SDK 存取 S3 資料的範例。
S3 存取授權中支援的 S3 動作
承授者可以使用由 S3 存取授權提供的臨時憑證,對其可存取的 S3 資料執行 S3 動作。以下是承授者可執行的允許 S3 動作清單。哪些動作是允許的,取決於存取授權中授予的許可層級 (READ
、WRITE
或 READWRITE
)。
注意
除了下列 Amazon S3 許可之外,Amazon S3 還可以呼叫 AWS Key Management Service (AWS KMS) Decrypt (kms:decrypt
) READ
許可或 AWS KMS GenerateDataKey (kms:generateDataKey
) WRITE
許可。這些許可不允許直接存取 AWS KMS 金鑰。
S3 IAM 動作 | API 動作與文件 | S3 存取授權許可 | S3 資源 |
---|---|---|---|
s3:GetObject |
GetObject | READ |
物件 |
s3:GetObjectVersion |
GetObject | READ |
物件 |
s3:GetObjectAcl |
GetObjectAcl | READ |
物件 |
s3:GetObjectVersionAcl |
GetObjectAcl | READ |
物件 |
s3:ListMultipartUploads |
ListParts | READ |
物件 |
s3:PutObject |
PutObject、CreateMultipartUpload、UploadPart、UploadPartCopy、CompleteMultipartUpload | WRITE |
物件 |
s3:PutObjectAcl |
PutObjectAcl | WRITE |
物件 |
s3:PutObjectVersionAcl |
PutObjectAcl | WRITE |
物件 |
s3:DeleteObject |
DeleteObject | WRITE |
物件 |
s3:DeleteObjectVersion |
DeleteObject | WRITE |
物件 |
s3:AbortMultipartUpload |
AbortMultipartUpload | WRITE |
物件 |
s3:ListBucket |
HeadBucket、ListObjectsV2、ListObjects | READ |
儲存貯體 |
s3:ListBucketVersions |
ListObjectVersions | READ |
儲存貯體 |
s3:ListBucketMultipartUploads |
ListMultipartUploads | READ |
儲存貯體 |