伺服器驗證 - AWS IoT Core

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

伺服器驗證

當您的裝置或其他用戶端嘗試連線至 時 AWS IoT Core AWS IoT Core ,伺服器會傳送 X.509 憑證,供您的裝置用來驗證伺服器。透過 X.509 憑證鏈的驗證,在 TLS層進行身分驗證。這是您造訪 HTTPS 時瀏覽器所使用的相同方法URL。如果您要使用自己的憑證授權單位的憑證,請參閱 管理您的憑證授權機構憑證

當您的裝置或其他用戶端建立與端點的TLS AWS IoT Core 連線時, 會 AWS IoT Core 呈現憑證鏈,讓裝置用來驗證其是否正在與 通訊 AWS IoT Core ,而不是其他冒充 的伺服器通訊 AWS IoT Core。顯示的鏈取決於裝置所連接端點的類型,以及在TLS交握期間用戶端和交 AWS IoT Core 涉的密碼套件的組合。

端點類型

AWS IoT Core 支援 iot:Data-ATSiot:Data-ATS端點顯示由 Amazon Trust Services CA 簽署的伺服器憑證。

ATS 端點提供的憑證由 Starfield 交叉簽署。有些TLS用戶端實作需要驗證信任根,並要求 Starfield CA 憑證安裝在用戶端的信任存放區中。

警告

不建議使用雜湊整個憑證 (包括發行者名稱等) 的憑證釘選方法,因為這樣會導致憑證驗證失敗,因為我們提供的ATS憑證由 Starfield 交叉簽署,且具有不同的發行者名稱。

重要

使用iot:Data-ATS端點。Symantec 和 Verisign 憑證已棄用,不再受 支援 AWS IoT Core。

您可以使用 describe-endpoint命令來建立ATS端點。

aws iot describe-endpoint --endpoint-type iot:Data-ATS

describe-endpoint 命令會傳回下列格式的端點。

account-specific-prefix.iot.your-region.amazonaws.com
注意

第一次呼叫 describe-endpoint 時,會建立一個端點。所有後續呼叫 describe-endpoint 會傳回相同的端點。

注意

若要在 AWS IoT Core 主控台中查看您的iot:Data-ATS端點,請選擇設定 。主控台只會顯示 iot:Data-ATS 端點。

IotDataPlaneClient 使用適用於 Java 的 AWS SDK 建立

若要建立IotDataPlaneClient使用iot:Data-ATS端點的 ,您必須執行下列動作。

  • 使用 建立iot:Data-ATS端點DescribeEndpointAPI。

  • 在建立 IotDataPlaneClient 時指定該端點。

下列範例會同時執行這些操作。

public void setup() throws Exception { IotClient client = IotClient.builder().credentialsProvider(CREDENTIALS_PROVIDER_CHAIN).region(Region.US_EAST_1).build(); String endpoint = client.describeEndpoint(r -> r.endpointType("iot:Data-ATS")).endpointAddress(); iot = IotDataPlaneClient.builder() .credentialsProvider(CREDENTIALS_PROVIDER_CHAIN) .endpointOverride(URI.create("https://" + endpoint)) .region(Region.US_EAST_1) .build(); }

伺服器身分驗證的憑證授權機構憑證

根據您所使用的資料端點類型和交涉的密碼套件, AWS IoT Core 伺服器身分驗證憑證會由下列其中一個根 CA 憑證簽署:

Amazon Trust Services 端點 (首選)

注意

您可能需要在這些連結上按一下滑鼠右鍵,然後選取 Save link as... (另存連結為...) 以將這些憑證儲存為檔案。

  • RSA 2048 位元金鑰: Amazon Root CA 1.

  • RSA 4096 位元金鑰:Amazon Root CA 2。 已保留供日後使用。

  • ECC 256 位元金鑰: Amazon Root CA 3.

  • ECC 384 位元金鑰:Amazon Root CA 4。 已保留供日後使用。

這些憑證都是由 Starfield 根憑證授權機構憑證交叉簽署的。從 2018 年 5 月 9 日 AWS IoT Core 在亞太區域 (孟買) 啟動 開始 AWS IoT Core ,所有新區域都只提供ATS憑證。

VeriSign 端點 (舊版)

伺服器身分驗證準則

有許多變數會影響裝置驗證 AWS IoT Core 伺服器驗證憑證的能力。例如,裝置的記憶體可能受限,無法保存所有可能的根憑證授權機構憑證,或者裝置可能實作非標準的憑證驗證方法。基於這些原因,我們建議您遵循以下準則:

注意

憑證授權機構憑證在過期日期之後,即無法用於驗證伺服器的憑證。憑證授權機構憑證過期日期之前,可能需要進行替代。請確認您能夠於所有裝置或用戶端更新根憑證授權機構憑證,以維持連線能力並取得最新的安全最佳實務。

注意

在裝置程式碼 AWS IoT Core 中連線至 時,請將憑證傳遞至API您用來連線的 。API 您使用的 會因 而異SDK。如需詳細資訊,請參閱AWS IoT Core 裝置 SDKs