匯出信箱內容 - Amazon WorkMail

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

匯出信箱內容

使用 Amazon WorkMail API 參考中的 StartMailboxExportJob API 動作,將 Amazon WorkMail 信箱內容匯出至 Amazon Simple Storage Service (Amazon S3) 儲存貯體。 Amazon WorkMail 此動作會以 MIME 格式,將所有電子郵件訊息和行事曆項目從指定的信箱匯出至 Amazon S3 儲存貯體中的.zip檔案。不會匯出其他項目,例如聯絡人和任務。

信箱匯出任務完成所需的時間取決於信箱中的項目大小和數量。由於信箱匯出任務會經過一段時間,因此不代表單一時間點的信箱內容快照。若要查看匯出任務的狀態,請使用 Amazon WorkMail API 參考中的 DescribeMailboxExportJobListMailboxExportJobs API 動作。 Amazon WorkMail

信箱匯出任務完成後,Amazon S3 儲存貯體中的.zip檔案會使用您提供的對稱 AWS Key Management Service (AWS KMS) 客戶主金鑰 (CMK) 進行加密。由於 AWS KMS 加密已與 Amazon S3 整合,因此只要使用者可存取 AWS KMS CMK,下載資料的使用者即可看見解密的資料。

先決條件

以下是匯出信箱內容的先決條件:

IAM 政策範例和角色建立

下列範例顯示 IAM 政策,其授予許可,以寫入 Amazon S3 儲存貯體並使用 CMK AWS KMS 加密傳送的檔案。若要在下列範例:匯出信箱內容程序中使用此範例政策,請將政策儲存為檔案名稱為 的 JSON 檔案mailbox-export-policy.json

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:PutObject", "s3:GetBucketPolicyStatus" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": [ "arn:aws:kms:us-east-1:111122223333:key/KEY-ID" ], "Condition": { "StringEquals": { "kms:ViaService": "s3.us-east-1.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/S3-PREFIX*" } } } ] }

下列範例顯示連接至您建立之 IAM 角色的 IAM 信任政策。若要在下列範例:匯出信箱內容程序中使用此範例政策,請將政策儲存為檔案名稱為 的 JSON 檔案mailbox-export-trust-policy.json

您不需要同時使用 aws:SourceArnaws:SourceAccount條件。例如,如果您需要使用相同的角色從相同 AWS 帳戶下的不同 Amazon WorkMail 組織匯出訊息,您可以從aws:SourceArn政策中移除 。如需條件金鑰的詳細資訊,請參閱 AWS Identity and Access Management 使用者指南中的AWS 全域條件內容金鑰

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "export.workmail.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333" }, "ArnLike": { "aws:SourceArn": "arn:aws:workmail:us-east-1:111122223333:organization/m-a123b4c5de678fg9h0ij1k2lm234no56" } } } ] }

您可以使用 執行下列命令 AWS CLI ,在帳戶中建立 IAM 角色。

aws iam create-role --role-name WorkmailMailboxExportRole --assume-role-policy-document file://mailbox-export-trust-policy.json --region us-east-1
aws iam put-role-policy --role-name WorkmailMailboxExportRole --policy-name MailboxExport --policy-document file://mailbox-export-policy.json

如需 的詳細資訊 AWS CLI,請參閱 AWS Command Line Interface 使用者指南

範例:匯出信箱內容

在上一節中建立 IAM 角色和政策後,請完成下列步驟以匯出信箱內容。您必須擁有 Amazon WorkMail 組織 ID 和使用者 ID (實體 ID),您可以在 Amazon WorkMail 主控台或使用 Amazon WorkMail API 存取。

範例:匯出信箱內容
  1. 使用 AWS CLI 啟動信箱匯出任務。

    aws workmail start-mailbox-export-job --organization-id m-a123b4c5de678fg9h0ij1k2lm234no56 --entity-id S-1-1-11-1111111111-2222222222-3333333333-3333 --kms-key-arn arn:aws:kms:us-east-1:111122223333:key/KEY-ID --role-arn arn:aws:iam::111122223333:role/WorkmailMailboxExportRole --s3-bucket-name amzn-s3-demo-bucket --s3-prefix S3-PREFIX
  2. 使用 AWS CLI 監控 Amazon WorkMail 組織的信箱匯出任務狀態。

    aws workmail list-mailbox-export-jobs --organization-id m-a123b4c5de678fg9h0ij1k2lm234no56

    或者,使用 start-mailbox-export-job命令產生的任務 ID,僅監控該信箱匯出任務的狀態。

    aws workmail describe-mailbox-export-job --organization-id m-a123b4c5de678fg9h0ij1k2lm234no56 --job-id JOB-ID

當信箱匯出任務狀態為 COMPLETED 時,匯出的信箱項目可在指定 Amazon S3 儲存貯體的.zip檔案中使用。

以下是匯出信箱的輸出日誌範例:

{ "totalNonExportableItems" : "13", "totalMessages" : "76", "sha384Hash" : "4de93a***96a1dd", "totalBytes" : "161892", "totalFolders" : "15", "startTime" : "168***380", "endTime" : "168***384" }
注意

totalNonExportableItems 是不支援的項目,例如備註和聯絡人。

考量事項

匯出 Amazon WorkMail 的信箱任務時,請考量下列各項:

  • 您最多可以為指定的 Amazon WorkMail 組織執行 10 個並行信箱匯出任務。

  • 您可以為指定的信箱執行信箱匯出任務,頻率為每 24 小時一次。

  • 下列資源必須全部位於相同 AWS 區域:

    • Amazon WorkMail 組織

    • AWS KMS CMK

    • Amazon S3 儲存貯體