本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
中的傳輸安全性 AWS IoT Core
TLS (Transport Layer Security) 是一種加密通訊協定,專為透過電腦網路進行安全通訊而設計。 AWS IoT Core Device Gateway 要求客戶在傳輸期間加密所有通訊,方法是使用 TLS 從裝置連線至 Gateway。TLS 可針對 AWS IoT Core支援的應用程式通訊協定 (MQTT、HTTP 和 WebSocket),達到其機密性。多種程式設計語言與作業系統提供 TLS 支援。內的資料由特定 AWS 服務 AWS 加密。如需其他服務資料加密的詳細資訊 AWS ,請參閱該服務的安全文件。
TLS 通訊協定
AWS IoT Core 支援下列版本的 TLS 通訊協定:
-
TLS 1.3
-
TLS 1.2
使用 AWS IoT Core,您可以在網域組態中設定 TLS 設定 (適用於 TLS 1.2
安全政策
安全政策是 TLS 通訊協定及其密碼的組合,用來決定在用戶端與伺服器之間進行 TLS 交涉期間所支援的通訊協定和密碼。您可根據需要將裝置設定為使用預先定義的安全政策。請注意, AWS IoT Core 不支援自訂安全政策。
連線裝置時,您可以選擇其中一個預先定義的安全政策 AWS IoT Core。中最新預先定義安全政策的名稱 AWS IoT Core 包括根據發行月份和年份的版本資訊。非AWS GovCloud (US) 區域的預設預先定義安全政策為IoTSecurityPolicy_TLS13_1_2_2022_01 AWS GovCloud (US) 區域 IoTSecurityPolicy_TLS13_1_2_2022_10和 。若要指定安全政策,您可以使用 AWS IoT 主控台或 AWS CLI。如需詳細資訊,請參閱在網域組態中設定 TLS 設定。
下表說明 AWS IoT Core 支援的最新預先定義安全政策。已從標頭列的政策名稱移除 IotSecurityPolicy_,使其相符。
| 安全政策 | TLS13_1_3_2022_10 | TLS13_1_2_2022_10 | TLS12_1_2_2022_10 | TLS12_1_0_2016_01* | TLS12_1_0_2015_01* | TLS13_1_2_2022_01* | ||
|---|---|---|---|---|---|---|---|---|
| TCP 連接埠 |
443/8443/8883 |
443/8443/8883 |
443/8443/8883 |
443 | 8443/8883 | 443 | 8443/8883 |
443/8443/8883 |
| TLS 通訊協定 | ||||||||
| TLS 1.2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| TLS 1.3 | ✓ | ✓ | ✓ | |||||
| TLS 加密 | ||||||||
| TLS_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | |||||
| TLS_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | |||||
| TLS_CHACHA20_POLY1305_SHA256 | ✓ | ✓ | ||||||
| ECDHE-RSA-AES128-GCM-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-RSA-AES128-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-RSA-AES128-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-RSA-AES256-GCM-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-RSA-AES256-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-RSA-AES256-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| AES128-GCM-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| AES128-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | |||
| AES128-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| AES256-GCM-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| AES256-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||
| AES256-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| DHE-RSA-AES256-SHA | ✓ | ✓ | ||||||
| ECDHE-ECDSA-AES128-GCM-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-ECDSA-AES128-SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-ECDSA-AES128-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-ECDSA-AES256-GCM-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-ECDSA-AES256-SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| ECDHE-ECDSA-AES256-SHA | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
注意
TLS12_1_0_2016_01 僅適用於下列項目 AWS 區域:ap-east-1、ap-northeast-2、ap-south-1、ap-southeast-2、ca-central-1、cn-north-1、cn-northwest-1、eu-north-1、eu-west-2、eu-west-3、me-south-1、sa-east-1、us-east-2、us-west-1。
TLS12_1_0_2015_01 僅適用於下列項目 AWS 區域:ap-northeast-1、ap-southeast-1、eu-central-1、eu-west-1、us-east-1、us-west-2。
TLS13_1_2_2022_01 僅適用於 AWS GovCloud (US) 區域。
中傳輸安全的重要注意事項 AWS IoT Core
對於 AWS IoT Core 使用 MQTT 連線至 的裝置,TLS 會加密裝置與代理程式之間的連線, AWS IoT Core 並使用 TLS 用戶端身分驗證來識別裝置。如需更多資訊,請參閱用戶端身分驗證。對於 AWS IoT Core 使用 HTTP 連線至 的裝置,TLS 會加密裝置與代理程式之間的連線,並將身分驗證委派給 AWS Signature 第 4 版。如需詳細資訊,請參閱《AWS 一般參考》中的使用 Signature 第 4 版簽署請求。
當您將裝置連線至 時 AWS IoT Core,不需要傳送伺服器名稱指示 (SNI) 擴充host_name欄位中提供完整的端點地址。該 host_name 欄位必須包含您正在呼叫的端點。該端點必須是下列其中一個:
-
aws iot describe-endpoint返回的--endpoint-type iot:Data-ATS endpointAddress -
aws iot describe-domain-configuration返回的–-domain-configuration-name " domain_configuration_name"domainName
host_name 值不正確或無效的裝置嘗試的連線將會失敗。 AWS IoT Core 會針對自訂身分驗證的身分驗證類型,將失敗記錄到 CloudWatch。
AWS IoT Core 不支援 SessionTicket TLS 延伸
LoRaWAN 無線裝置的傳輸安全性
LoRaWAN 裝置遵循 LoRaWAN ™ SECURITY: A White Paper Prepared for the LoRa Alliance™ by Gemalto, Actility, and Semtech
如需使用 LoRaWAN 裝置傳輸安全性的詳細資訊,請參閱 LoRaWAN 資料和傳輸安全性。