

**支援終止通知：**2026 年 10 月 30 日， AWS 將結束對 Amazon Pinpoint 的支援。2026 年 10 月 30 日之後，您將無法再存取 Amazon Pinpoint 主控台或 Amazon Pinpoint 資源 (端點、區段、行銷活動、旅程和分析)。如需詳細資訊，請參閱 [Amazon Pinpoint 終止支援](https://docs.aws.amazon.com/console/pinpoint/migration-guide)。**注意：**與 SMS、語音、行動推播、OTP 和電話號碼驗證相關的 APIs 不受此變更影響，並受 AWS 最終使用者傳訊支援。

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

# 用於匯出端點或客群的 IAM 角色
<a name="permissions-export-endpoints"></a>

您可以建立匯出任務以取得端點清單。建立匯出任務時，必須指定專案 ID，客群 ID 則可不指定。Amazon Pinpoint 會將與專案或客群相關聯的端點清單，匯出到 Amazon Simple Storage Service (Amazon S3) 儲存貯體。產生的檔案包含端點及其屬性的 JSON 格式清單，例如管道、地址、加入/退出狀態、建立日期和端點 ID。

若要建立匯出任務，您必須設定 IAM 角色允許 Amazon Pinpoint 寫入 Amazon S3 儲存貯體。設定角色的程序包含兩個步驟：

1. 建立一個允許實體 (就本案例而言是 Amazon Pinpoint) 寫入特定 Amazon S3 儲存貯體的 IAM 政策。

1. 建立 IAM 角色，並將政策連接到該角色。

此主題包含完成這兩個步驟的程序。這些程序假設您已建立 Amazon S3 儲存貯體，以及該儲存貯體內的資料夾，以用於存放匯出的客群。如需建立儲存貯體的詳細資訊，請參閱 *Amazon Simple Storage Service 使用者指南*中的[建立儲存貯體](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html)。

這些程序也假設您已安裝並設定 AWS Command Line Interface (AWS CLI)。如需設定 的詳細資訊 AWS CLI，請參閱*AWS Command Line Interface 《 使用者指南*》中的[安裝 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) 。

## 步驟 1：建立 IAM 政策
<a name="permissions-export-endpoints-create-policy"></a>

IAM 政策定義了實體的許可，例如身分或資源。若要建立一個角色來匯出 Amazon Pinpoint 端點，必須先在特定 Amazon S3 儲存貯體中，建立一個授予特定資料夾寫入許可的政策。以下政策範例遵循了授予最低權限的安全性實務—也就是只授予執行單一任務所需的許可。

**若要建立 IAM 政策**

1. 在文字編輯器中，建立新檔案。將以下程式碼貼到檔案：

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowUserToSeeBucketListInTheConsole",
               "Action": [
                   "s3:ListAllMyBuckets",
                   "s3:GetBucketLocation"
               ],
               "Effect": "Allow",
               "Resource": [ "arn:aws:s3:::*" ]
           },
           {
               "Sid": "AllowRootAndHomeListingOfBucket",
               "Action": [
                   "s3:ListBucket"
               ],
               "Effect": "Allow",
               "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-example-bucket" ],
               "Condition": {
                   "StringEquals": {
                       "s3:delimiter": [ "/" ],
                       "s3:prefix": [
                           "",
                           "Exports/"
                       ]
                   }
               }
           },
           {
               "Sid": "AllowListingOfUserFolder",
               "Action": [
                   "s3:ListBucket"
               ],
               "Effect": "Allow",
               "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-example-bucket" ],
               "Condition": {
                   "StringLike": {
                       "s3:prefix": [
                           "Exports/*"
                       ]
                   }
               }    
           },
           {
               "Sid": "AllowAllS3ActionsInUserFolder",
               "Action": [ "s3:*" ],
               "Effect": "Allow",
               "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket-example-bucket/Exports/*" ]
           }
       ]
   }
   ```

------

   在上述程式碼中，將 *amzn-s3-demo-bucket-example-bucket* 的所有執行個體取代為 Amazon S3 儲存貯體的名稱，其中包含您要匯出區段資訊的資料夾。此外，請將 *Exports* 的所有執行個體取代為資料夾本身的名稱。

   完成後，請將檔案儲存為 `s3policy.json`。

1. 透過使用 AWS CLI，導覽至 `s3policy.json` 檔案所在的目錄。然後，輸入以下命令建立政策：

   ```
   aws iam create-policy --policy-name s3ExportPolicy --policy-document file://s3policy.json
   ```

   如果成功建立政策，您會看到類似以下的輸出：

   ```
   {
       "Policy": {
           "CreateDate": "2018-04-11T18:44:34.805Z",
           "IsAttachable": true,
           "DefaultVersionId": "v1",
           "AttachmentCount": 0,
           "PolicyId": "ANPAJ2YJQRJCG3EXAMPLE",
           "UpdateDate": "2018-04-11T18:44:34.805Z",
           "Arn": "arn:aws:iam::123456789012:policy/s3ExportPolicy",
           "PolicyName": "s3ExportPolicy",
           "Path": "/"
       }
   }
   ```

   複製政策的 Amazon Resource Name (ARN) (上述範例中的 `arn:aws:iam::123456789012:policy/s3ExportPolicy`)。在下一節，您必須在建立角色時提供此 ARN。
**注意**  
如果出現訊息，說明您的帳戶無權執行 `CreatePolicy` 操作，您需要將政策與您的使用者連接，這樣才能建立新的 IAM 政策和角色。如需詳細資訊，請參閱《IAM 使用者指南》**中的[新增和移除 IAM 身分許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html#attach-managed-policy-console)。

## 步驟 2：建立 IAM 角色
<a name="permissions-export-endpoints-create-role"></a>

現在您已建立 IAM 政策，接下來就能建立角色並連接該 IAM 政策。每個 IAM 角色包含了*信任政策*—這套規則指定了哪些實體可擔任該角色。本節中，您需要建立允許 Amazon Pinpoint 擔任角色的信任政策。接著，您需要建立角色本身，然後連接您在上一節建立的政策。

**建立 IAM 角色**

1. 在文字編輯器中，建立新檔案。將以下程式碼貼到檔案：

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement":[
           {
               "Effect":"Allow",
               "Principal":{
                   "Service":"pinpoint.amazonaws.com"
               },
               "Action":"sts:AssumeRole",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "accountId"
                   },
                   "ArnLike": {
                   "aws:SourceArn": "arn:aws:mobiletargeting:us-east-1:111122223333:apps/applicationId"
                   }
               }
           }
       ]
   }
   ```

------

   儲存檔案為 `trustpolicy.json`。

1. 透過使用 AWS CLI，導覽至 `trustpolicy.json` 檔案所在的目錄。輸入以下命令來建立新的角色：

   ```
   aws iam create-role --role-name s3ExportRole --assume-role-policy-document file://trustpolicy.json
   ```

1. 在命令列，輸入下列命令，將您在上一節建立的政策連接到您剛建立的角色：

   ```
   aws iam attach-role-policy --policy-arn arn:aws:iam::123456789012:policy/s3ExportPolicy --role-name s3ExportRole
   ```

   在上述命令中，將 *arn:aws:iam::123456789012:policy/s3ExportPolicy* 替換成您在上一節建立的政策的 ARN。