View a markdown version of this page

針對資料匯出設定 Amazon S3 儲存貯體 - AWS 資料匯出

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

針對資料匯出設定 Amazon S3 儲存貯體

若要接收和儲存您的資料匯出,您的帳戶 AWS 或指定的目的地 AWS 帳戶中必須有 Amazon S3 儲存貯體。在主控台中建立匯出時,如果您想要在自己的儲存貯體中匯出,您可以選擇您擁有的現有 S3 儲存貯體,也可以建立新的儲存貯體。無論哪種情況,您都需要檢閱並確認下列預設 S3 儲存貯體政策的套用。如果您想要將匯出交付到另一個 AWS 帳戶擁有的儲存貯體,您可以在資料匯出建立程序期間指定儲存貯體擁有者和儲存貯體名稱。在您建立匯出之後,編輯儲存貯體政策或變更 S3 儲存貯體擁有者可能會阻止資料匯出交付匯出。將匯出資料存放在任何 S3 儲存貯體中,會以標準 Amazon S3 費率計費。如需詳細資訊,請參閱配額和限制

建立資料匯出時,下列政策必須套用至每個 S3 儲存貯體,無論是您擁有還是不同的 AWS 帳戶:

{ "Version":"2012-10-17", "Statement": [ { "Sid": "EnableAWSDataExportsToWriteToS3", "Effect": "Allow", "Principal": { "Service": [ "bcm-data-exports.amazonaws.com" ] }, "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::{bucket-name}/*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:bcm-data-exports:us-east-1:{source-account-id}:export/*" }, "StringEquals": { "aws:SourceAccount": "{source-account-id}" } } } ] }

此 S3 儲存貯體政策可確保資料匯出只能代表建立匯出的帳戶將匯出交付至 S3 儲存貯體。它還允許資料匯出驗證 S3 儲存貯體是否仍由匯出建立期間指定的帳戶所擁有。

  • 若要將匯出交付至 S3 儲存貯體, AWS 需要該 S3 儲存貯體的寫入許可。若要這樣做,S3 儲存貯體政策會授予資料匯出服務 (bcm-data-exports.amazonaws.com) 許可,將 (s3:PutObject) 報告交付至您擁有的 S3 儲存貯體 ()arn:aws:s3:::<EXAMPLE-BUCKET>/*

  • 每次資料匯出發出寫入 S3 儲存貯體的請求時,都必須提供建立匯出之帳戶的帳戶 ID。條件索引鍵 aws:SourceArn和 會aws:SourceAccount強制執行此動作。

  • 此 S3 儲存貯體政策不允許 AWS 讀取或刪除 S3 儲存貯體中的任何物件,包括交付後的成本和用量報告。

對於已啟用存取控制清單 (ACL) 的 Amazon S3 儲存貯體,資料匯出會在交付報告時將 BucketOwnerFullControl ACL 套用至報告。根據預設,Amazon S3 物件,例如這些報告,只能由撰寫它們的使用者或服務主體讀取。若要提供您或 S3 儲存貯體擁有者讀取報告的許可, AWS 需要套用 BucketOwnerFullControl ACL。ACL 會為這些報告授予 S3 儲存貯Permission.FullControl體擁有者。不過,建議您停用 ACL,並使用 S3 儲存貯體政策來控制存取。

注意

對於新建立的 S3 儲存貯體,ACLs。如需詳細資訊,請參閱控制物件的擁有權並停用儲存貯體的 ACL

如果您在資料匯出主控台頁面中看到無效的儲存貯體錯誤,請確認政策和 S3 儲存貯體擁有權自報告設定以來並未變更。