建立和管理裝置身分識別
請為裝置建立用來連線到 Azure IoT 中樞的裝置身分識別。 本文介紹用於管理裝置身分識別的主要工作,包括註冊裝置、收集其連線資訊,然後在裝置的生命週期結束時刪除或停用裝置。
必要條件
Azure 訂用帳戶中的 IoT 中樞。 如果您還沒有中樞,可遵循建立 IoT 中樞中的步驟。
視您使用的工具而定,您要擁有 Azure 入口網站的存取權或安裝 Azure CLI (部分機器翻譯)。
如果您的 IoT 中樞是使用角色型存取控制 (RBAC) 來加以管理的,則您需要「讀取/寫入/刪除裝置/模組」的權限以便執行本文中的步驟。 這些權限包含在 IoT 中樞登錄參與者 (部分機器翻譯) 角色中。
準備憑證
裝置會使用兩種不同類型的憑證來連線到 IoT 中樞。 準備裝置時,請先確定您已建立所有適當的憑證,並在連線之前新增至裝置。
- 公用跟證書:所有裝置都需要 IoT 中樞、IoT Central 和裝置布建服務用來授權連線的公用跟證書複本。
- 驗證憑證:X.509 憑證是驗證裝置身分識別的建議方法。
必要的公用跟證書
Azure IoT 裝置會使用 TLS 來驗證其所連線 IoT 中樞或 DPS 端點的真實性。 每個裝置都需要 IoT 中樞和 DPS 使用的跟證書複本。 我們建議所有裝置在其受信任的證書存儲中包含下列根 CA:
- DigiCert Global G2 根 CA
- Microsoft RSA 根 CA 2017
如需 IoT 中樞建議憑證做法的詳細資訊,請參閱 TLS 支援 (部分機器翻譯)。
驗證憑證
如果您針對裝置使用 X.509 憑證驗證,請先確定您的憑證已就緒,再註冊裝置:
若為 CA 簽署的憑證,教學課程建立及上傳用於測試的憑證有提供不錯的介紹,說明如何建立 CA 簽署的憑證,並將其上傳至 IoT 中樞。 完成該教學課程後,您就可以使用「CA 簽署的 X.509」驗證來註冊裝置。
若為自我簽署的憑證,則需要裝置上的兩個裝置憑證 (主要憑證和次要憑證) 以及這兩個憑證的指紋才能上傳至 IoT 中樞。 從憑證擷取指紋的其中一種方式是使用下列 OpenSSL 命令:
openssl x509 -in <certificate filename>.pem -text -fingerprint
註冊裝置
在本節中,您會在 IoT 中樞的身分識別登錄中建立裝置身分識別。 除非裝置有裝置身分識別,否則無法連線到中樞。
IoT 中樞身分識別登錄只會儲存裝置身分識別,以啟用對 IoT 中樞的安全存取。 它會儲存裝置識別碼和金鑰來作為安全性認證,以及啟用或停用旗標,讓您用來停用個別裝置的存取。
當您註冊裝置時,請選擇其驗證方法。 IoT 中樞支援三種裝置驗證方法:
對稱金鑰 - 對於快速入門案例來說,這是最容易的選項。
當您註冊裝置時,您可以提供金鑰,或由 IoT 中樞為您產生金鑰。 裝置和 IoT 中樞都有一份對稱金鑰,可於裝置連線時進行比較。
自我簽署的 X.509
如果您的裝置有自我簽署的 X.509 憑證,則您必須為 IoT 中樞提供某個版本的憑證以便進行驗證。 註冊裝置時會上傳憑證「指紋」,這是裝置的 X.509 憑證的雜湊。 當裝置連線時,其會出示憑證,而 IoT 中樞可以根據其所知道的雜湊來驗證此憑證。 如需詳細資訊,請參閱使用 X.509 憑證驗證身分識別。
CA 簽署的 X.509 - 生產案例建議使用此選項。
如果您的裝置有 CA 簽署的 X.509 憑證,請在註冊裝置之前,先將簽署鏈結中的根或中繼憑證授權單位 (CA) 憑證上傳至 IoT 中樞。 裝置在其憑證信任鏈結中具有 X.509 憑證和已驗證的 X.509 CA。 當裝置連線時,其會出示完整的憑證鏈結,而 IoT 中樞知道 X.509 CA,因此可以驗證此憑證鏈結。 多個裝置可以針對相同的已驗證 X.509 CA 進行驗證。 如需詳細資訊,請參閱使用 X.509 憑證驗證身分識別。
新增裝置
在您的 IoT 中樞中建立裝置身分識別。
在 Azure 入口網站中,瀏覽至您的 IoT 中樞。
選取 [裝置管理]>[裝置]。
選取 [新增裝置] 以在 IoT 中樞內新增裝置。
在 [建立裝置] 中,提供新裝置身分識別的資訊:
參數 相依參數 值 裝置識別碼 提供新裝置的名稱。 驗證類型 選取 [對稱金鑰]、[自我簽署的 X.509] 或 [CA 簽署的 X.509]。 自動產生金鑰 若為「對稱金鑰」驗證,請核取此方塊,讓 IoT 中樞為您的裝置產生金鑰。 或者,取消核取此方塊,並提供您裝置的主要和次要金鑰。 主要指紋和次要指紋 若為「自我簽署的 X.509」驗證,請從裝置的主要和次要憑證提供指紋雜湊。 重要
裝置識別碼可能會顯示在為了客戶支援和疑難排解而收集的記錄中,因此務必避免在命名時使用任何敏感性資訊。
選取 [儲存]。
擷取裝置連接字串
在範例和測試案例中,最常見的連線方法是使用對稱金鑰驗證,並使用「裝置連接字串」進行連線。 裝置連接字串中包含 IoT 中樞的名稱、裝置的名稱,以及裝置的驗證資訊。
如需其他裝置連線方法的相關資訊,特別是 X.509 驗證,請參閱 Azure IoT 中樞裝置 SDK (部分機器翻譯)。
請使用下列步驟來擷取裝置連接字串。
Azure 入口網站只會為使用對稱金鑰驗證的裝置提供裝置連接字串。
在 Azure 入口網站中,瀏覽至您的 IoT 中樞。
選取 [裝置管理]>[裝置]。
從 [裝置] 窗格中的清單選取您的裝置。
複製 [主要連接字串] 的值。
根據預設,金鑰和連接字串都是敏感性資訊,會進行遮罩處理。 按一下眼睛圖示,這些資訊就會顯示。 用複製按鈕複製資訊時,並不需要加以顯示。
使用對稱金鑰驗證的裝置,其裝置連接字串具有下列模式:
HostName=<IOT_HUB_NAME>;DeviceId=<DEVICE_NAME>;SharedAccessKey=<PRIMARY_OR_SECONDARY_KEY>
使用 X.509 驗證的裝置,無論是自我簽署的還是 CA 簽署的,通常不會使用裝置連接字串來進行驗證。 當這些裝置這麼做時,其連接字串會採用下列模式:
HostName=<IOT_HUB_NAME>;DeviceId=<DEVICE_NAME>;x509=true
停用或刪除裝置
如果您想要將裝置保留在 IoT 中樞的身分識別登錄中,但想要防止裝置連線,則可將其狀態變更為已停用。
在 Azure 入口網站中,瀏覽至您的 IoT 中樞。
選取 [裝置管理]>[裝置]。
從 [裝置] 窗格中的清單選取您的裝置。
在 [裝置詳細資料] 頁面上,您可以停用或刪除裝置註冊。
若要防止裝置進行連線,請將 [允許連線到 IoT 中樞] 參數設定為 [停用]。
若要從 IoT 中樞的身分識別登錄完全移除裝置,請選取 [刪除]。
用於管理裝置身分識別的其他工具
您可以使用其他工具或介面來管理 IoT 中樞的身分識別登錄,包括:
PowerShell 命令:請參閱 Az.IotHub 命令集,以了解如何管理裝置身分識別。
Visual Studio Code:適用於 Visual Studio Code 的 Azure IoT 中樞延伸模組 (部分機器翻譯) 包含身分識別登錄功能。
REST API:請參閱 IoT 中樞服務 API,以了解如何管理裝置身分識別。