AWS IOT — Регистрация завершается ошибкой — InvalidCertificateOwnershipToken

#amazon-web-services #iot #esp32 #aws-iot #provisioning

Вопрос:

Это настоящий вызов. До этого момента я добивался успеха во всем, что касалось обеспечения автопарка на встроенном устройстве. Я подписался и опубликовал темы и получил новые сертификаты и ключи. Но когда я беру предоставленный мне сертификат владения и пытаюсь запустить регистрацию устройства, я получаю:

{«StatusCode»:400,»Код ошибки»:»Неверное подтверждение доступа»,»Сообщение об ошибке»:»Маркер владения сертификатом не может быть пустым».}

Мой токен имеет длину 466 символов, и я отправляю его вместе с 2 другими элементами в этой строке:

{«certificateOwnershipToken»:»eyF1ZXJzaW9uIjoiMjAxOTEwMjMiLCJjaXBoZXIiOiJBaURqMUdYMjBiVTUwQTFsTUV4eEJaM3ZXREU1dXZSSURoTy80cGpLS1o1VkVHdlZHQm81THNaS1VydG0zcTdoZGtVR0l1cmJZS0dLVkx2dTZNL2ViT2pkVFdIeDEwU3o3aFZPeExERkxWVlJ4OUIvL2RzcXRIeVp1WVo2RXZoU1k0L0txQ0doZ1lyRklwZGlLK05pUlNHMXlLQXJUSGJXSkNlVUxHcHRPWHJtdHJaNWJMUyt1MHFUcjNJVnlVLzNpcGZVVm1PanpmL3NCYzdSNkNyVGJPZ05Nc2xmOXdHSVRWM0tPUjd1aFFSbnZySnY0S1ZtU2hYc2REODI4K1crRE1xYnRYZGUxSXlJU29XZTVTSHh6NVh2aFF3OGl3V09FSzBwbG15Zi82dUgyeERoNjB1WS9lMD0ifQ==»,»parameters»:{«SerialNumber»:»82B910″,»CertificateId»:»175b43a3d605f22d30821c4a920a6231978e5d846d3f2e7a15d2375d2fd5098c»}}

Мои шаблоны выглядят правильно, моя политика выглядит правильно. Роль, которая прикреплена к моему шаблону, похоже, покрывает мои потребности. Я просто не знаю, как AWS терпит неудачу без дополнительной информации.

У кого-нибудь есть идеи о том, как действовать дальше?

Комментарии:

1. НОВАЯ ИНФОРМАЦИЯ: Я только что отключил этот шаблон-и сообщение об ошибке не изменилось. КРОМЕ того, у меня отключен крючок для обеспечения Лямбды.

Ответ №1:

Я нашел свою проблему. В C/C aws iot sdk-есть структура данных, в которой вы должны указать строку полезной нагрузки и несколько других вещей. Одним из этих элементов данных является длина полезной нагрузки, и я забыл задать эту длину перед отправкой полезной нагрузки в раздел $aws/provisioning-templates//provisioning/json. Как только я установил эту длину, отправка сработала, шаблон был обработан, и вещь была создана