

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

# 設定 Amazon SES 電子郵件接收
<a name="receiving-email-setting-up"></a>

本節說明您開始設定 Amazon SES 來接收郵件的必要條件。您必須已經閱讀 [電子郵件接收概念與使用案例](receiving-email-concepts.md) 以瞭解 Amazon SES 如何運作的概念，以及考慮您希望如何接收、篩選和處理電子郵件。

在可以透過建立*規則集*、*接收規則*，以及 *IP 地址篩選條件*以設定電子郵件接收之前，您必須先完成以下設定必要條件：
+ 透過發佈 DNS 記錄來證明您擁有該記錄，向 Amazon SES 驗證您的網域。
+ 透過發佈 MX 記錄，允許 Amazon SES 接收您網域的電子郵件。
+ 授予 Amazon SES 存取其他 AWS 資源的許可，以執行接收規則動作。

建立並驗證網域身分時，您會將記錄發佈至您的 DNS 設定以完成驗證程序，但僅此而言並不足以使用電子郵件接收。特定對於電子郵件接收，也需要發佈 MX 記錄，以指定自訂寄件人網域。此記錄會用於您網域的 DNS 設定，以允許 SES 接收您網域的電子郵件。必須提供許可，因為您在接收規則中選擇的動作將無法運作，除非 Amazon SES 有權使用這些動作所需的相應 AWS 服務。

**Topics**
+ [驗證您用於 Amazon SES 電子郵件接收的網域](receiving-email-verification.md)
+ [發佈用於 Amazon SES 電子郵件接收的 MX 記錄](receiving-email-mx-record.md)
+ [給予 Amazon SES 接收電子郵件的許可](receiving-email-permissions.md)

# 驗證您用於 Amazon SES 電子郵件接收的網域
<a name="receiving-email-verification"></a>

任何用於透過 Amazon SES 傳送或接收電子郵件的網域，您都必須先證明您擁有該網域。驗證程序包含如何使用 SES 起始網域驗證，然後根據您使用的驗證方法將 DNS 記錄 (CNAME 或 TXT) 發佈到您的 DNS 供應商。

透過主控台，您可以使用 [Easy DKIM](send-email-authentication-dkim-easy.md) 或者[使用自有 DKIM (BYODKIM)](send-email-authentication-dkim-bring-your-own.md) 來驗證您的網域，並輕鬆複製其 DNS 記錄以發佈到您的 DNS 提供商，若要瞭解如何執行此操作，請參閱[建立網域身分](creating-identities.md#verify-domain-procedure)。您也可以選擇使用 SES [https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainDkim.html](https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainDkim.html) 或者 [https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainIdentity.html](https://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainIdentity.html) API。

您可以查看 SES 主控台中的 [Verified identities](view-verified-domains.md) (已驗證身分) 或使用 SES [https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityVerificationAttributes.html](https://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityVerificationAttributes.html) 或 [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_GetEmailIdentity.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_GetEmailIdentity.html) API 來確認您的電子郵件地址或網域已經過驗證。

# 發佈用於 Amazon SES 電子郵件接收的 MX 記錄
<a name="receiving-email-mx-record"></a>

*郵件交換程式*記錄 (*MX 記錄*) 是一種組態，可指定哪些郵件伺服器可接受傳送到您的網域的電子郵件。

若要讓 Amazon SES 管理您的傳入電子郵件，需將 MX 記錄新增到您的網域 DNS 組態。您建立的 MX 記錄是指接收您使用 Amazon SES 之 AWS 區域電子郵件的端點。例如，美國西部 (奧勒岡) 區域的端點為 *inbound-smtp.us-west-2.amazonaws.com*。如需完整端點清單，請參閱 [SES 區域和端點](regions.md#region-endpoints)。

**注意**  
Amazon SES 接收電子郵件的端點並非 IMAP 或 POP3 電子郵件伺服器。您無法使用這些 URL 做為電子郵件用戶端的傳入郵件伺服器。若您需要一套解決方案，可透過電子郵件用戶端同時傳送及接收電子郵件，可考慮使用 [Amazon WorkMail](https://aws.amazon.com/workmail)。

下列程序包含建立 MX 記錄的一般步驟。*建立 MX 記錄的特定程序取決於您的 DNS 或託管供應商。*請參閱供應商的文件，以取得新增 MX 記錄至網域的 DNS 組態之相關資訊。

**注意**  


**將 MX 記錄新增至網域的 DNS 組態**

1. （先決條件） 若要完成這些程序，您需要修改網域的 DNS 記錄。如果您無法存取 DNS 記錄，或者您不放心這麼做，請聯絡您的系統管理員尋求協助。

1. 登入您的 DNS 提供者的管理主控台。

1. 建立新的 MX 記錄。

1. 在 MX 記錄 **Name** (名稱) 的部分，請輸入您的網域。例如，若您希望 Amazon SES 管理傳送至 *example.com* 網域的電子郵件，請輸入下列內容：

   ```
   example.com.
   ```
**注意**  
根據您的 DNS 提供者：1) 可能不需要`.`網域延伸結尾的結尾。2) **名稱**欄位可稱為**主機**、**網域**或**郵件網域**。

1. 在 **Type (類型)** 的部分，選擇 **MX**。
**注意**  
部分 DNS 提供者會將 **Type (類型)** 欄位稱為 **Record Type (記錄類型)** 或類似名稱。

1. 對於 **Value (值)**，請輸入下列內容：

   ```
   10 inbound-smtp.region.amazonaws.com
   ```

   在上述範例中，將 *region* 取代為您搭配 Amazon SES 使用之 AWS 區域接收電子郵件的端點地址。例如，如果您使用的是美國東部 (維吉尼亞北部) 區域，請以 `us-east-1` 取代 *region*。如需電子郵件接收端點的完整清單，請參閱 [SES 區域和端點](regions.md#region-endpoints)。
**注意**  
部分 DNS 供應商的管理主控台的記錄 **Value (值)** 和記錄 **Priority (優先順序)** 分屬不同欄位。如果您的 DNS 供應商是這種情況，**Priority (優先順序)**值請輸入 `10`，然後為 **Value (值)** 輸入傳入郵件端點 URL。

**重要**  
建立 MX 記錄的特定程序視您的 DNS 或託管提供者而有所不同。如需將 MX 記錄新增至網域 DNS 組態的相關資訊，請參閱供應商的文件或聯絡供應商。

## 針對各種供應商建立 MX 記錄的指示
<a name="receiving-email-mx-record-links"></a>

要建立您網域的 MX 記錄，程序取決於您使用的 DNS 供應商。本區段包含幾個常用 DNS 供應商的文件連結。這不是完整的供應商清單。若您的供應商未列於下方，也許仍可用於 Amazon SES。此清單並非為任何公司的產品背書或推薦其服務。


| DNS/託管供應商名稱 | 文件連結 | 
| --- | --- | 
|  Amazon Route 53  |  [使用 Amazon Route 53 主控台來建立記錄](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-creating.html)  | 
|  GoDaddy  |  [新增 MX 記錄](https://www.godaddy.com/help/add-an-mx-record-19234) (外部連結)  | 
|  DreamHost  |  [如何變更我的 MX 記錄？](https://help.dreamhost.com/hc/en-us/articles/215035328)(外部連結)  | 
|  Cloudflare  |  [設定電子郵件記錄](https://developers.cloudflare.com/dns/manage-dns-records/how-to/email-records/) (外部連結)  | 
|  HostGator  |  [變更 MX 記錄 - Windows](https://www.hostgator.com/help/article/changing-mx-records-windows) (外部連結)  | 
|  Namecheap  |  [如何設定電子郵件服務所需的 MX 記錄？](https://www.namecheap.com/support/knowledgebase/article.aspx/322/2237/how-can-i-set-up-mx-records-required-for-mail-service)(外部連結)  | 
|  Names.co.uk  |  [變更您網域的 DNS 設定](https://www.names.co.uk/support/domains/1156-changing_your_domains_dns_settings.html) (外部連結)  | 
|  Wix  |  [在您的 Wix 帳戶中新增或更新 MX 記錄](https://support.wix.com/en/article/adding-or-updating-mx-records-in-your-wix-account) (外部連結)  | 

# 給予 Amazon SES 接收電子郵件的許可
<a name="receiving-email-permissions"></a>

當您在 SES 中收到電子郵件時，您可以執行的一些任務需要特殊許可，例如傳送電子郵件到 Amazon Simple Storage Service (Amazon S3) 儲存貯體或呼叫 AWS Lambda 函數。本節說明多個常見使用案例的範例政策。

**Topics**
+ [設定交付至 S3 儲存貯體動作的 IAM 角色許可](#receiving-email-permissions-s3-iam-role)
+ [授予 SES 寫入 S3 儲存貯體的許可](#receiving-email-permissions-s3)
+ [授予 SES 許可以使用您的 AWS KMS 金鑰](#receiving-email-permissions-kms)
+ [授予 SES 叫用 AWS Lambda 函數的許可](#receiving-email-permissions-lambda)
+ [准許 SES 發佈至屬於不同 AWS 帳戶的 Amazon SNS 主題](#receiving-email-permissions-sns)

## 設定交付至 S3 儲存貯體動作的 IAM 角色許可
<a name="receiving-email-permissions-s3-iam-role"></a>

下列要點適用於此 IAM 角色：
+ 它只能用於 [傳送至 S3 儲存貯體動作](receiving-email-action-s3.md)。
+ 如果想要寫入存在於[電子郵件接收](regions.md#region-receive-email)無法使用 SES 的區域中的 S3 儲存貯體，則必須使用它。

如果想要寫入 S3 儲存貯體，您可以為 IAM 角色提供存取 相關資源的許可[傳送至 S3 儲存貯體動作](receiving-email-action-s3.md)。您也需要授予 SES 許可，以擔任該角色透過 [IAM 信任政策執行動作，如下一節所述](#receiving-email-permissions-s3-iam-role-trust)。

此許可政策必須貼到 IAM 角色的內嵌政策編輯器中，請參閱[傳送至 S3 儲存貯體動作](receiving-email-action-s3.md)並遵循 **IAM 角色**項目中提供的步驟。（以下範例也包含選用許可，以防您想要使用 SNS 主題通知，或在 S3 動作中使用客戶受管金鑰。)

**注意**  
您可以選擇只允許 S3 儲存貯體政策中的 SES 服務，在不指定 IAM 角色的情況下設定 S3 動作，如下所示[授予 SES 寫入 S3 儲存貯體的許可](#receiving-email-permissions-s3)。這也適用於跨帳戶案例。
如果您為 S3 動作指定 IAM 角色，SES 會擔任 'PutObject' 操作的該角色，而此處指定的 IAM 許可將足以供相同的帳戶使用。不過，對於跨帳戶使用，您需要一個額外的儲存貯體政策，允許 IAM 角色在儲存貯體中「PutObject」。這是由授予跨帳戶儲存貯體許可的儲存貯體擁有者所指定，如[授予跨帳戶儲存貯體許可的儲存貯體擁有者](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-walkthroughs-managing-access-example2.html)中所述。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3Access",
            "Effect": "Allow",
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
        },
        {
            "Sid": "SNSAccess",
            "Effect": "Allow",
            "Action": "sns:Publish",
            "Resource": "arn:aws:sns:us-east-1:111122223333:my-topic"
        },
        {
            "Sid": "KMSAccess",
            "Effect": "Allow",
            "Action": "kms:GenerateDataKey*",
            "Resource": "arn:aws:kms:us-east-1::111122223333:key/key-id"
        }
    ]
}
```

------

在上述範例政策中進行下列變更：
+ 以您要寫入的 S3 儲存貯體名稱取代 *amzn-s3-demo-bucket*。
+ 將*區域*取代 AWS 區域 為您建立接收規則的 。
+ 將 *111122223333* 取代為您的 AWS 帳戶 ID。
+ 將 *my-topic* 取代為您要發佈通知的 SNS 主題名稱。
+ 以 KMS *金鑰的 ID 取代 key-id*。

### S3 動作 IAM 角色的信任政策
<a name="receiving-email-permissions-s3-iam-role-trust"></a>

下列信任政策應新增至 IAM 角色的*信任關係*中，以允許 SES 擔任該角色。

**注意**  
只有在您未使用[傳送至 S3 儲存貯體動作](receiving-email-action-s3.md)工作流程的 IAM 角色項目中提供的步驟從 SES 主控台建立 **IAM** 角色時，才需要手動新增此信任政策。*當您從主控台建立 IAM 角色時，系統會自動產生此信任政策，並套用到角色，讓您不需要此步驟。*

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowSESAssume",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                  "AWS:SourceAccount":"111122223333",
                  "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name"
                }
            }
        }
    ]
}
```

------

在上述範例政策中進行下列變更：
+ 將*區域*取代 AWS 區域 為您建立接收規則的 。
+ 將 *111122223333* 取代為您的 AWS 帳戶 ID。
+ 將 *rule\$1set\$1name* 替換為含有接收規則且該接收規則中含有傳送至 Amazon S3 儲存貯體動作的規則集名稱。
+ 將 *receipt\$1rule\$1name* 替換為含有傳送至 Amazon S3 儲存貯體動作的接收規則名稱。

## 授予 SES 寫入 S3 儲存貯體的許可
<a name="receiving-email-permissions-s3"></a>

當您將下列政策套用到 S3 儲存貯體時，只要該儲存貯體存在於可使用 SES [電子郵件接收](https://docs.aws.amazon.com/general/latest/gr/ses.html#ses_inbound_endpoints)的區域，它就會授予 SES 許可，如果您想要寫入*電子郵件接收*區域以外的儲存貯體，請參閱 [設定交付至 S3 儲存貯體動作的 IAM 角色許可](#receiving-email-permissions-s3-iam-role)。如需建立將傳入電子郵件傳輸到 Amazon S3 的接收規則相關資訊，請參閱「[傳送至 S3 儲存貯體動作](receiving-email-action-s3.md)」。

如需 S3 儲存貯體原則的詳細資訊，請參閱 *Amazon Simple Storage Service 使用者指南*中的[使用儲存貯體政策和使用者政策](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-iam-policies.html)。

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Sid":"AllowSESPuts",
      "Effect":"Allow",
      "Principal":{
        "Service":"ses.amazonaws.com"
      },
      "Action":"s3:PutObject",
      "Resource":"arn:aws:s3:::amzn-s3-demo-bucket/*",
      "Condition":{
        "StringEquals":{
          "AWS:SourceAccount":"111122223333",
          "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name"
        }
      }
    }
  ]
}
```

------

在上述範例政策中進行下列變更：
+ 以您要寫入的 S3 儲存貯體名稱取代 *amzn-s3-demo-bucket*。
+ 將*區域*取代為您建立接收規則 AWS 的區域。
+ 將 *111122223333* 取代為您的 AWS 帳戶 ID。
+ 將 *rule\$1set\$1name* 替換為含有接收規則且該接收規則中含有傳送至 Amazon S3 儲存貯體動作的規則集名稱。
+ 將 *receipt\$1rule\$1name* 替換為含有傳送至 Amazon S3 儲存貯體動作的接收規則名稱。

## 授予 SES 許可以使用您的 AWS KMS 金鑰
<a name="receiving-email-permissions-kms"></a>

為了讓 SES 加密您的電子郵件，它必須具有許可，才能使用您在設定接收規則時指定的 AWS KMS 金鑰。您可以使用帳戶中的預設 KMS 金鑰 (**aws/ses**)，或使用您建立的客戶受管金鑰。如果您使用預設 KMS 金鑰，則不需要執行任何其他步驟來授予 SES 使用它的許可。如果您使用客戶受管金鑰，您需要透過將陳述式新增至金鑰的政策來授予 SES 使用它的許可。

使用下列政策陳述式做為金鑰政策，允許 SES 在您的網域上收到電子郵件時使用您的客戶受管金鑰。

```
{
  "Sid": "AllowSESToEncryptMessagesBelongingToThisAccount", 
  "Effect": "Allow",
  "Principal": {
    "Service":"ses.amazonaws.com"
  },
  "Action": [
    "kms:GenerateDataKey*"
  ],
  "Resource": "*",
  "Condition":{
        "StringEquals":{
          "AWS:SourceAccount":"111122223333",
          "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name"
        }
      }
}
```

在上述範例政策中進行下列變更：
+ 將*區域*取代為您建立接收規則 AWS 的區域。
+ 將 *111122223333* 取代為您的 AWS 帳戶 ID。
+ 將 *rule\$1set\$1name* 替換為含有已與電子郵件接收相關聯之接收規則的規則集名稱。
+ 將 *receipt\$1rule\$1name* 替換為已與電子郵件接收相關聯的接收規則名稱。

如果您使用 AWS KMS 將加密的訊息傳送至已啟用伺服器端加密的 S3 儲存貯體，則需要新增政策動作 `"kms:Decrypt"`。使用上述範例，將此動作新增到您的政策中，將顯示如下：

```
{
  "Sid": "AllowSESToEncryptMessagesBelongingToThisAccount", 
  "Effect": "Allow",
  "Principal": {
    "Service":"ses.amazonaws.com"
  },
  "Action": [
    "kms:Decrypt",
    "kms:GenerateDataKey*"
  ],
  "Resource": "*",
  "Condition":{
        "StringEquals":{
          "AWS:SourceAccount":"111122223333",
          "AWS:SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name"
        }
      }
}
```

如需將政策連接至 AWS KMS 金鑰的詳細資訊，請參閱《 *AWS Key Management Service 開發人員指南*》中的[在 中使用金鑰政策 AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html)。

## 授予 SES 叫用 AWS Lambda 函數的許可
<a name="receiving-email-permissions-lambda"></a>

若要讓 SES 呼叫 AWS Lambda 函數，您可以在 SES 主控台中建立接收規則時選擇函數。當您這麼做時，SES 會自動將必要的許可新增至函數。

或者也可使用 AWS Lambda API 中的 `AddPermission` 作業來將政策連接至函數。下列 API 呼叫`AddPermission`提供 SES 叫用 Lambda 函數的許可。如需將政策連接至 Lambda 函數的詳細資訊，請參閱 *AWS Lambda 開發人員指南*中的 [AWS Lambda 許可](https://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html)。

```
{
  "Action": "lambda:InvokeFunction",
  "Principal": "ses.amazonaws.com",
  "SourceAccount": "111122223333",
  "SourceArn": "arn:aws:ses:region:111122223333:receipt-rule-set/rule_set_name:receipt-rule/receipt_rule_name",
  "StatementId": "GiveSESPermissionToInvokeFunction"
}
```

在上述範例政策中進行下列變更：
+ 將*區域*取代為您建立接收規則 AWS 的區域。
+ 將 *111122223333* 取代為您的 AWS 帳戶 ID。
+ 將 *rule\$1set\$1name* 取代為包含在其中建立 Lambda 函數之接收規則的規則集名稱。
+ 將 *receipt\$1rule\$1name* 取代為包含 Lambda 函數之接收規則的名稱。

## 准許 SES 發佈至屬於不同 AWS 帳戶的 Amazon SNS 主題
<a name="receiving-email-permissions-sns"></a>

若要將通知發佈至個別 AWS 帳戶中的主題，您必須將政策連接至 Amazon SNS 主題。SNS 主題所在區域必須與網域和接收規則集所在區域相同。

下列政策提供 SES 許可，以發佈至不同 AWS 帳戶中的 Amazon SNS 主題。

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": "SNS:Publish",
            "Resource": "arn:aws:sns:us-east-1:111122223333:topic_name",
            "Condition": {
                "StringEquals": {
                "AWS:SourceAccount": "444455556666",
                "AWS:SourceArn": "arn:aws:ses:us-east-1:777788889999:receipt-rule-set/rule_set_name:receipt-rule/rule_name"
                }
            }
        }
    ]
}
```

------

在上述範例政策中進行下列變更：
+ 將 *topic\$1region* 取代為建立 Amazon SNS 主題 AWS 區域 的 。
+ 將 *sns\$1topic\$1account\$1id* 取代為擁有 Amazon SNS 主題的 AWS 帳戶 ID。
+ 將 *topic\$1name* 取代為您想要發佈通知的 Amazon SNS 主題名稱。
+ 將 *aws\$1account\$1id* 取代為設為接收電子郵件的 AWS 帳戶 ID。
+ 將 *receipt\$1region* 取代 AWS 區域 為您建立接收規則的 。
+ 將 *rule\$1set\$1name* 取代為包含您建立發佈至 Amazon SNS 主題動作的接收規則之規則集名稱。
+ 將 *receipt\$1rule\$1name* 取代為包含發佈至 Amazon SNS 主題動作的接收規則名稱。

如果您的 Amazon SNS 主題使用 AWS KMS 進行伺服器端加密，您必須將許可新增至 AWS KMS 金鑰政策。您可以將下列政策連接至 AWS KMS 金鑰政策來新增許可：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowSESToUseKMSKey",
            "Effect": "Allow",
            "Principal": {
                "Service": "ses.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey",
                "kms:Decrypt"
            ],
            "Resource": "*"
        }
    ]
}
```

------