

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

# 中的傳輸安全性 AWS IoT Core
<a name="transport-security"></a>

TLS (Transport Layer Security) 是一種加密通訊協定，專為透過電腦網路進行安全通訊而設計。 AWS IoT Core Device Gateway 要求客戶在傳輸期間加密所有通訊，方法是使用 TLS 從裝置連線至 Gateway。TLS 可針對 AWS IoT Core支援的應用程式通訊協定 (MQTT、HTTP 和 WebSocket)，達到其機密性。多種程式設計語言與作業系統提供 TLS 支援。內的資料由特定 AWS 服務 AWS 加密。如需其他服務資料加密的詳細資訊 AWS ，請參閱該服務的安全文件。

**Topics**
+ [TLS 通訊協定](#tls-ssl-policy)
+ [安全政策](#tls-policy-table)
+ [中傳輸安全的重要注意事項 AWS IoT Core](#tls-ssl-core)
+ [LoRaWAN 無線裝置的傳輸安全性](#tls-lorawan)

## TLS 通訊協定
<a name="tls-ssl-policy"></a>

AWS IoT Core 支援下列版本的 TLS 通訊協定：
+ TLS 1.3 
+ TLS 1.2

使用 AWS IoT Core，您可以在網域組態中設定 TLS 設定 （適用於 [TLS 1.2](https://en.wikipedia.org/wiki/Transport_Layer_Security#TLS_1.2) 和 [TLS 1.3)。](https://en.wikipedia.org/wiki/Transport_Layer_Security#TLS_1.3)如需詳細資訊，請參閱[在網域組態中設定 TLS 設定](iot-endpoints-tls-config.md)。

## 安全政策
<a name="tls-policy-table"></a>

安全政策是 TLS 通訊協定及其密碼的組合，用來決定在用戶端與伺服器之間進行 TLS 交涉期間所支援的通訊協定和密碼。您可根據需要將裝置設定為使用預先定義的安全政策。請注意， AWS IoT Core 不支援自訂安全政策。

連線裝置時，您可以選擇其中一個預先定義的安全政策 AWS IoT Core。中最新預先定義安全政策的名稱 AWS IoT Core 包括根據發行月份和年份的版本資訊。預設的預先定義安全政策為 `IoTSecurityPolicy_TLS13_1_2_2022_10`。若要指定安全政策，您可以使用 AWS IoT 主控台或 AWS CLI。如需詳細資訊，請參閱[在網域組態中設定 TLS 設定](iot-endpoints-tls-config.md)。

下表說明 AWS IoT Core 支援的最新預先定義安全政策。已從標頭列的政策名稱移除 `IotSecurityPolicy_`，使其相符。


| **安全政策** | TLS13\$11\$13\$12022\$110 | TLS13\$11\$12\$12022\$110 | TLS12\$11\$12\$12022\$110 | TLS12\$11\$10\$12016\$101\$1 | TLS12\$11\$10\$12015\$101\$1 | 
| --- | --- | --- | --- | --- | --- | 
| TCP 連接埠 |  443/8443/8883  |  443/8443/8883  |  443/8443/8883  | 443 | 8443/8883 | 443 | 8443/8883 | 
| TLS 通訊協定 | 
| TLS 1.2 |  | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | 
| TLS 1.3 | ✓ | ✓ |  |  |  |  |  | 
| TLS 加密 | 
| TLS\$1AES\$1128\$1GCM\$1SHA256 | ✓ | ✓ |  |  |  |  |  | 
| TLS\$1AES\$1256\$1GCM\$1SHA384 | ✓ | ✓ |  |  |  |  |  | 
| TLS\$1CHACHA20\$1POLY1305\$1SHA256 | ✓ | ✓ |  |  |  |  |  | 
| 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-gov-west-1、us-gov-west-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。

## 中傳輸安全的重要注意事項 AWS IoT Core
<a name="tls-ssl-core"></a>

對於 AWS IoT Core 使用 [MQTT](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html) 連線至 的裝置，TLS 會加密裝置與代理程式之間的連線， AWS IoT Core 並使用 TLS 用戶端身分驗證來識別裝置。如需更多資訊，請參閱[用戶端身分驗證](https://docs.aws.amazon.com//iot/latest/developerguide/client-authentication.html)。對於 AWS IoT Core 使用 [HTTP](https://docs.aws.amazon.com//iot/latest/developerguide/http.html) 連線至 的裝置，TLS 會加密裝置與代理程式之間的連線，並將身分驗證委派給 AWS Signature 第 4 版。如需詳細資訊，請參閱《AWS 一般參考》**中的[使用 Signature 第 4 版簽署請求](https://docs.aws.amazon.com//general/latest/gr/create-signed-request.html)。

當您將裝置連線到 時 AWS IoT Core，不需要傳送[伺服器名稱指示 (SNI) 擴充](https://tools.ietf.org/html/rfc3546#section-3.1)功能，但強烈建議您這麼做。若要使用[多帳戶註冊](https://docs.aws.amazon.com//iot/latest/developerguide/x509-client-certs.html#multiple-account-cert)、[自訂網域](https://docs.aws.amazon.com//iot/latest/developerguide/iot-custom-endpoints-configurable-custom.html)、[VPC 端點](https://docs.aws.amazon.com//iot/latest/developerguide/IoTCore-VPC.html)和[已設定的 TLS 政策](https://docs.aws.amazon.com//iot/latest/developerguide/iot-endpoints-tls-config.html)等功能，您必須使用 SNI 延伸，並在 `host_name`欄位中提供完整的端點地址。該 `host_name` 欄位必須包含您正在呼叫的端點。該端點必須是下列其中一個：
+ `aws iot [describe-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-endpoint.html) --endpoint-type iot:Data-ATS` 返回的 `endpointAddress`
+ `aws iot [describe-domain-configuration](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/describe-domain-configuration.html) –-domain-configuration-name "domain_configuration_name"` 返回的 `domainName`

具有不正確或無效`host_name`值的裝置嘗試的連線將會失敗。 AWS IoT Core 會針對[自訂身分驗證](https://docs.aws.amazon.com//iot/latest/developerguide/custom-authentication.html)的身分驗證類型，將失敗記錄到 CloudWatch。

AWS IoT Core 不支援 [SessionTicket TLS 延伸](https://www.ietf.org/rfc/rfc5077.txt)。

## LoRaWAN 無線裝置的傳輸安全性
<a name="tls-lorawan"></a>

LoRaWAN 裝置遵循 [LoRaWAN ™ SECURITY: A White Paper Prepared for the LoRa Alliance™ by Gemalto, Actility, and Semtech](https://lora-alliance.org/sites/default/files/2019-05/lorawan_security_whitepaper.pdf) 中所述的安全實務。

如需使用 LoRaWAN 裝置傳輸安全性的詳細資訊，請參閱 [LoRaWAN 資料和傳輸安全性](https://docs.aws.amazon.com/iot-wireless/latest/developerguide/iot-lorawan-security.html)。