共用方式為


取得及部署 EAP-TLS 網路憑證

Azure 球體裝置連線到 EAP-TLS 網路之前,必須具備用戶端憑證,讓 RADIUS 伺服器可以用來驗證裝置。 如果您的網路需要共同驗證,則每個裝置也必須有 Root CA 憑證,以便驗證 RADIUS 伺服器。

您取得及部署這些憑證的方式,取決於您的裝置可用的網路資源。

  • 如果 EAP-TLS 網路是唯一可用的網路,您必須 手動部署憑證
  • 如果有另一種形式的網路,例如開放式網路,您可以使用 「啟動增益集」方法。 在啟動載入方法中,Azure 球體高層級應用程式會從開放式網路取得憑證,然後使用這些憑證連線到 EAP-TLS 網路。

謹慎

由於憑證識別碼是全系統,因此新增憑證的 azsphere 命令或函數呼叫可能會覆寫先前命令或函數通話所新增的憑證,而可能導致網路連線失敗。 我們強烈建議您開發清楚的憑證更新程式,並謹慎選擇憑證識別碼。 如需詳細資料,請參閱 憑證標識 符。

手動部署

如果 EAP-TLS 網路是您裝置唯一可用的網路,您必須手動部署憑證。 手動部署需要使用網路電腦或 Linux 電腦取得憑證,然後使用 Azure 球體 CLI 將憑證載入到每個 Azure 球體裝置上。 此方法需要電腦或 Linux 電腦與 Azure 球體裝置之間的實體連線。

手動取得憑證

Root CA 和用戶端憑證必須位於 。要載入至 Azure 球體裝置的 PEM 格式。 您必須從適當的伺服器取得 Root CA 憑證,以及用戶端憑證和私密金鑰 (,並且選擇性地為您的裝置輸入私密金鑰) 密碼。 每個憑證都必須由 EAP-TLS 網路中的適當伺服器產生並簽署。 您的網路系統管理員或安全性小組可以提供取得憑證所需的詳細資料。

將憑證儲存在 。電腦或 Linux 電腦上的 PEM 格式,然後使用 Azure 球體 CLI 將它們儲存在 Azure 球體裝置上。

使用 CLI 儲存憑證

將 Azure 球體裝置連接到網路電腦或 Linux 電腦,然後使用 azsphere 命令將憑證儲存在裝置上。

若要將 Root CA 憑證儲存到 Azure 球體裝置:

azsphere device certificate add --cert-id "server-key-xyz" --cert-type rootca --public-key-file <filepath_to_server_ca_public.pem>

若要將用戶端憑證儲存到 Azure 球體裝置:

azsphere device certificate add --cert-id "client-key-abc" --cert-type client --public-key-file <filepath_to_client_public.pem> --private-key-file <filepath_to_client_private.pem> --private-key-password "_password_"

啟動增益集部署

若要連接大量或在許多位置的 Azure 球體裝置,請考慮使用「啟動載入」方法。 若要使用此方法,您的裝置必須能夠連線到網路,讓裝置可以透過該網路存取可提供憑證的伺服器。 您的高階 Azure 球體應用程式會透過可用的網路連線到伺服器、要求憑證,然後將憑證儲存在裝置上。

下圖摘要說明此程式。

啟動部署期間的憑證流程

  1. Azure 球體裝置上的應用程式會連線到開放式網路,並連絡 Azure 球體安全服務以取得其 DAA 憑證。 然後在裝置上安裝 DAA 憑證。 裝置應使用此憑證與憑證頒發服務進行驗證。

  2. 接下來的應用程式會連線到網路系統管理員指定的憑證頒發服務。 它會顯示 DAA 憑證以驗證其與伺服器的身分識別,並要求 EAP-TLS 網路上 RADIUS 伺服器的 Root CA 憑證,以及用戶端憑證和私密金鑰。 如有需要,服務可能會將其他資訊傳遞給應用程式,例如用戶端身分識別,以及私密金鑰密碼。 應用程式接著會在裝置上安裝用戶端憑證、用戶端私密金鑰和 Root CA 憑證。 然後它就可以中斷與開放式網路的連線。

  3. 應用程式會設定並啟用 EAP-TLS 網路。 它提供用戶端憑證和私人金鑰來證明裝置的身分識別。 如果網路支援共同驗證,應用程式也會使用 Root CA 憑證驗證 RADIUS 伺服器。

在啟動期間驗證裝置並取得用戶端憑證

Azure 球體裝置可以使用其裝置驗證和證明 (DAA) 憑證,以向可提供其他必要憑證的服務進行驗證。 DAA 憑證可從 Azure 球體安全性服務取得。

若要取得 DAA 憑證:

  1. 在適用于高階應用程式之應用程式 資訊清單 的 DeviceAuthentication 區段中指定 Azure 球體租使用者識別碼。
  2. 從高階應用程式撥 號DeviceAuth_CurlSslFunc ,以取得目前 Azure 球體租使用者的憑證鏈。

如果應用程式資訊清單包含目前裝置的 Azure 球體租使用者識別碼, 則如果 目標服務需要 TLS 共同驗證,DeviceAuth_CurlSslFunc函數會使用 DAA 用戶端憑證鏈進行驗證。

取得 RADIUS 伺服器的 Root CA 憑證

若要取得 RADIUS 伺服器的 Root CA 憑證,應用程式會連線到其網路上易於存取的憑證伺服器端點,並可提供憑證。 您的網路系統管理員應該能夠提供如何連線到端點和擷取憑證的相關資訊。

使用 CertStore API 安裝憑證

應用程式使用 CertStore API 將憑證安裝到裝置上。 CertStore_InstallClientCertificate函數會安裝用戶端憑證,CertStore_InstallRootCACertificate安裝 RADIUS 伺服器的 Root CA 憑證。 在高階應用程式中管理憑證 提供有關使用 CertStore API 進行憑證管理的其他資訊。

憑證範例應用程式會顯示應用程式如何使用這些函數。