之前連接到服務器,您需要分配啓用SSL的TIdIOHandler
成分,如TIdSSLIOHandlerSocketOpenSSL
,到TIdSMTP.IOHandler
屬性和TIdSMTP.UseEHLO
屬性設置爲True。然後,你有兩個選擇來配置TLS設置:
設置TIdSMTP.UseTLS
屬性utUseExplicitTLS
,然後TIdSMTP.Port
屬性設置爲25,587,或2587(所有三個在SES支持utUseExplicitTLS
端口)。
設置TIdSMTP.UseTLS
屬性utUseImplicitTLS
,然後將TIdSMTP.Port
屬性設置爲465或2465(上SES支持utUseImplicitTLS
兩個端口)。
的UseTLS
值之間的差別在於utUseExplicitTLS
將連接到服務器最初未加密然後發送SMTP STARTTLS
命令給服務器以在需要時啓用加密,而utUseImplicitTLS
將連接到服務器並立即啓用加密然後可以交換任何與SMTP相關的數據。
亞馬遜建議驗證服務器的TLS證書以驗證連接的完整性。您可以啓用TIdSSLIOHandlerSocketOpenSSL.SSLOptions.VerifyMode
屬性中的sslvrfPeer
和sslvrfFailIfNoPeerCert
標誌,然後根據需要使用TIdSSLIOHandlerSocketOpenSSL.OnVerifyPeer
事件驗證證書詳細信息。