一型一密認證方式下,同一產品下所有裝置可以燒錄相同的裝置標誌資訊,即所有裝置包含相同的產品認證(ProductKey和ProductSecret)。裝置發送啟用請求時,物聯網平台會進行身份確認,認證通過後,下發裝置接入所需資訊。
背景資訊
一型一密認證支援兩種使用方式:一型一密免預註冊、一型一密預註冊,對比說明如下表所示。
採用一型一密認證方式,裝置燒錄相同的標誌資訊,存在產品認證泄露風險。您可以在物聯網平台控制台的產品詳情頁面,手動關閉動態註冊開關,拒絕新裝置的認證請求。
一型一密動態註冊時必須使用TLS加密,如果您的裝置端SDK無法運行TLS加密,則無法使用一型一密認證方式,請採用一機一密認證方式。
對比項 | 一型一密免預註冊 | 一型一密預註冊 |
接入協議 | MQTT協議 | HTTPS協議、MQTT協議 |
支援地區 | 華東2(上海)、華北2(北京) |
|
支援執行個體 | 企業版執行個體 | 企業版執行個體和公用執行個體 |
功能特點 | 不需要在物聯網平台預註冊裝置DeviceName。 | 需要在物聯網平台預註冊裝置DeviceName。 對於網關子裝置,僅支援預註冊方式。 |
使用限制 | 物聯網平台允許最多5個物理裝置使用同一組ProductKey、ProductSecret、DeviceName進行啟用,並為不同物理裝置下發不同的ClientID、DeviceToken。 |
|
使用流程
一型一密認證流程示意圖如下。
直連裝置動態註冊
直連裝置動態註冊分為一型一密預註冊和一型一密免預註冊。
一型一密預註冊
建立產品:建立產品時,節點類型為直連裝置。
開啟動態註冊:在已建立產品的產品詳情頁面,開啟動態註冊開關。
物聯網平台將進行簡訊驗證,以確認是您本人操作。
說明若裝置發出啟用請求時,物聯網平台校正發現該開關未開啟,將拒絕新裝置的動態啟用請求。已啟用裝置不受影響。
大量新增裝置或單個添加裝置:使用一型一密預註冊認證方式接入裝置,您需在已建立產品下添加裝置。
因裝置啟用時會校正
DeviceName
,建議您採用可以直接從裝置中讀取到的ID,如裝置的MAC地址、IMEI或SN碼等,作為DeviceName使用。添加裝置成功後,物聯網平台為裝置頒發
DeviceSecret
。裝置初始狀態為未啟用。
產線燒錄:開發裝置端SDK,完成產線燒錄。
選擇直連裝置接入物聯網平台的協議:MQTT協議和HTTPS協議。
註冊認證的開發方法如下:
MQTT:基於MQTT協議的裝置動態註冊。
HTTPS:直連裝置的HTTPS動態註冊。
根據實際業務需求,完成裝置端SDK開發,例如裝置物模型Topic通訊、裝置自訂Topic通訊、OTA升級、裝置影子等功能開發。
裝置端開發,請參見使用裝置端SDK接入。
重要如果使用物聯網平台提供的C Link SDK,對於一型一密免預註冊方式,請在裝置端使用4.X版C Link SDK。該SDK包含DAS(裝置取證服務),可以對裝置可能產生的安全事件進行風控。
物聯網平台不承擔因裝置端沒有使用4.X版C Link SDK而導致的安全風險。
在產線上,將已開發完成的裝置SDK燒錄至裝置中。
裝置連網:裝置上電連網後,攜帶
ProductKey
、ProductSecret
、DeviceName
發起認證請求。在物聯網平台啟用裝置。
物聯網平台校正通過後,為實際物理裝置下發步驟3中為該裝置頒發的
DeviceSecret
。至此,物理裝置獲得串連物聯網平台所需的裝置認證(ProductKey
、DeviceName
和DeviceSecret
),可以與物聯網平台建立串連,進行資料通訊。
一型一密免預註冊
建立產品:建立產品時,節點類型為直連裝置。
開啟動態註冊:在已建立產品的產品詳情頁面,開啟動態註冊開關。
物聯網平台將進行簡訊驗證,以確認是您本人操作。
說明若裝置發出啟用請求時,物聯網平台校正發現該開關未開啟,將拒絕新裝置的動態啟用請求。已啟用裝置不受影響。
產線燒錄:開發裝置端SDK,完成產線燒錄。
選擇直連裝置接入物聯網平台的協議:MQTT協議。
註冊認證的開發方法如下:基於MQTT協議的裝置動態註冊。
根據實際業務需求,完成裝置端SDK開發,例如裝置物模型Topic通訊、裝置自訂Topic通訊、OTA升級、裝置影子等功能開發。
裝置端開發,請參見使用裝置端SDK接入。
重要如果使用物聯網平台提供的C Link SDK,對於一型一密免預註冊方式,請在裝置端使用4.X版C Link SDK。該SDK包含DAS(裝置取證服務),可以對裝置可能產生的安全事件進行風控。
物聯網平台不承擔因裝置端沒有使用4.X版C Link SDK而導致的安全風險。
在產線上,將已開發完成的裝置SDK燒錄至裝置中。
裝置連網:裝置上電連網後,攜帶
ProductKey
、ProductSecret
、DeviceName
發起認證請求。在物聯網平台啟用裝置。
物聯網平台校正通過後,下發
ClientID
、DeviceToken
。裝置後續通過ProductKey
、ProductSecret
和下發的ClientID
、DeviceToken
與物聯網平台建立串連,進行資料通訊。當多個不同ClientID的物理裝置共用一個
DeviceName
時,物聯網平台控制台產品詳情頁將提示當前產品下有裝置同時有兩個ClientID。您可根據以下操作,指定保留唯一物理裝置,或清除所有物理裝置:在產品詳情頁面,單擊該提示後的查看,跳轉到產品下的風險裝置列表。
在
頁面,單擊列表中目標裝置對應的查看,進入裝置詳情頁面,頁面顯示當前串連的ClientID
,單擊ClientID
右側的切換或清除。切換:從下拉式清單選擇
ClientID
,通過該ClientID
對應裝置的首次連線時間,或者單擊Log Service,通過該ClientID
對應裝置的雲端作業記錄,判斷其是否為需要保留的物理裝置。選擇要保留的物理裝置的ClientID
,單擊確認。未被選擇的ClientID
對應物理裝置,將被禁止串連。說明雲端作業記錄說明,請參見雲端作業記錄。
清除:所有物理裝置都將被禁止串連。
網關子裝置動態註冊
網關裝置的動態註冊方法與直連裝置動態註冊方法相同。網關子裝置動態註冊只支援一型一密預註冊。
建立產品:為網關和子裝置分別建立對應產品。網關對應產品的節點類型為網關裝置,子裝置對應產品的節點類型為網關子裝置。
開啟動態註冊:在已建立網關與子裝置對應產品的產品詳情頁面,開啟動態註冊開關。
物聯網平台將進行簡訊驗證,以確認是您本人操作。
說明若裝置發出啟用請求時,物聯網平台校正發現該開關未開啟,將拒絕新裝置的動態啟用請求。已啟用裝置不受影響。
大量新增裝置或單個添加裝置:在已建立網關和子裝置對應產品下添加裝置。
因裝置啟用時會校正
DeviceName
,建議您採用可以直接從裝置中讀取到的ID,如裝置的MAC地址、IMEI或SN碼等,作為DeviceName使用。添加裝置成功後,物聯網平台為裝置頒發
DeviceSecret
。裝置初始狀態為未啟用。
產線燒錄。
基於MQTT協議的裝置動態註冊和子裝置的MQTT動態註冊:配置網關裝置認證資訊和接入網域名稱,在網關裝置的SDK中,初始化子裝置管理執行個體,配置網關與子裝置的拓撲關係和註冊認證。
網關與子裝置拓撲關係管理的詳細內容,請參見管理拓撲關係。
根據實際業務需求,完成裝置端SDK開發,例如網關裝置代理程式子裝置通訊功能開發。
裝置端開發,請參見使用裝置端SDK接入。
在產線上,將已開發完成的網關裝置SDK和子裝置的ProductKey燒錄至網關裝置,將子裝置的裝置認證燒錄至子裝置。
裝置連網:網關和子裝置上電連網後,網關裝置攜帶子裝置的ProductKey、DeviceName,發起認證請求。
物聯網平台啟用裝置。