本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon SES和安全通訊協定
本主題說明當您連線至 Amazon SES以及 Amazon 將電子郵件SES傳送給收件人時,您可以使用的安全通訊協定。
電子郵件寄件者至 Amazon SES
您用來連線至 Amazon 的安全通訊協定SES取決於您是使用 Amazon SESAPI還是 Amazon SES SMTP 介面,如下文所述。
HTTPS
如果您使用 Amazon SESAPI(直接或透過 AWS SDK),則所有通訊都會TLS透過 Amazon SESHTTPS端點加密。Amazon SESHTTPS端點支援 TLS 1.2 和 TLS 1.3。
SMTP 介面
如果您SES透過 SMTP 介面存取 Amazon,則需要使用 Transport Layer Security () 加密連線TLS。請注意, TLS 通常由其前代通訊協定的名稱 Secure Sockets Layer (SSL) 所指。
Amazon SES支援建立 TLS加密連線的兩種機制: STARTTLS和 TLS Wrapper。
-
STARTTLS—STARTTLS 是將未加密連線升級至加密連線的一種方法。有STARTTLS適用於各種通訊協定的 版本;SMTP版本定義於 RFC 3207
。對於STARTTLS連線,Amazon SES支援 TLS 1.2 和 TLS 1.3。 -
TLS Wrapper —TLS Wrapper (也稱為 SMTPS或交握通訊協定) 是啟動加密連線的方式,無需先建立未加密的連線。使用 TLS Wrapper 時,Amazon TLS SESSMTP端點不會執行交涉:用戶端有責任使用 連線至端點TLS,並在整個對話TLS中繼續使用 。TLS Wrapper 是較舊的通訊協定,但許多用戶端仍然支援它。對於 TLS Wrapper 連線,Amazon SES支援 TLS 1.2 和 TLS 1.3。
如需使用這些方法連線至 Amazon SES SMTP 介面的相關資訊,請參閱 連線至 Amazon SESSMTP端點。
Amazon SES至接收器
雖然 TLS 1.3 是我們的預設交付方法,但 SES 可以使用舊版 將電子郵件交付至郵件伺服器TLS。
根據預設,Amazon SES會使用機會式 TLS。這表示 Amazon SES一律會嘗試與接收郵件伺服器建立安全連線。如果 Amazon SES 無法建立安全連線,則會傳送未加密的訊息。
您可以透過使用組態集來變更這種行為。使用 PutConfigurationSetDeliveryOptionsAPI操作將組態的 TlsPolicy
屬性設定為 Require
。您可以使用 AWS CLI
若要設定 Amazon SES以要求組態集的TLS連線
-
在命令列中輸入以下命令:
aws sesv2 put-configuration-set-delivery-options --configuration-set-name
MyConfigurationSet
--tls-policy REQUIRE在上述範例中,取代
MyConfigurationSet
您的組態集名稱。當您使用此組態集傳送電子郵件時,Amazon SES只會在可以建立安全連線的情況下,將訊息傳送至接收的電子郵件伺服器。如果 Amazon SES無法與接收的電子郵件伺服器建立安全連線,則會捨棄訊息。
End-to-end 加密
您可以使用 Amazon SES來傳送使用 S/MIME 或 加密的訊息PGP。使用這些通訊協定的訊息會由寄件者加密。其內容只能由擁有解密訊息所需之私有金鑰的收件人檢視。
Amazon SES支援下列類型,您可以使用這些MIME類型來傳送 S/MIME 加密電子郵件:
-
application/pkcs7-mime
-
application/pkcs7-signature
-
application/x-pkcs7-mime
-
application/x-pkcs7-signature
Amazon SES也支援下列類型,您可以使用這些MIME類型來傳送 PGP加密電子郵件:
-
application/pgp-encrypted
-
application/pgp-keys
-
application/pgp-signature