Distribute & Manage Client Secret (WiFi) Credentials to IoT Fleet during Provisioning Stage

0

Hi all,

We are receiving client requests to preconfigure IoT devices with their selected Wi-Fi credentials.

Our current scenario is the following:

  1. Our devices are provisioned using AWS IoT Core and unique device certificates
  2. An OTA is done as a final check (using the provisioning WiFi network)
  3. The client receives the device and has to configure their WiFi credentials.

This flow isn't maintainable when a single client orders 1000 devices which he/she has to configure manually. So we would like to configure the WiFi credentials during the provisioning phase, making it plug and play for the client.

In order to do this, we have to:

  1. Store the clients WiFi credentials in a secure place (encrypted)
  2. Retrieve the clients secret, decrypt it and communicate it to the IoT device to be saved in secure memory

AWS Credential manager seems a good way to store and encrypt the clients credentials. For retrieving the credentials (which we need in plain text) I see multiple options:

  • Retrieve the credentials using AWS CLI from our provisioning tool & configure the device
  • Retrieve it via GitHub Actions and create a custom provisioning OTA package for it (this seems overkill and hard to manage)
  • After the generic provisioning OTA (which uses the provisioning network), launch a lambda (or something) which retrieves the client credentials and update it through MQTTS.

What is best practice/approach for this? Any thoughts with the mentioned approaches?

Cheers!

질문됨 2달 전164회 조회
답변 없음

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인