Compartir a través de


SDK de Microsoft para IoT Hub Device Provisioning Service

Los SDK de Microsoft para IoT Hub Device Provisioning Service (DPS) le ayudan a crear aplicaciones de dispositivo y back-end que aprovisionan dispositivos IoT en uno o varios centros de IoT. Los SDK controlan los protocolos de seguridad y transporte subyacentes entre los dispositivos o las aplicaciones back-end y DPS, lo que le libera para centrarse en el desarrollo de aplicaciones. Mediante el uso de los SDK, obtendrá soporte técnico para futuras actualizaciones de DPS, incluidas las actualizaciones de seguridad. En este artículo se describen las tres categorías de SDK, se enumeran los SDK de DPS publicados en lenguajes populares y se proporcionan vínculos a referencias, ejemplos e inicios rápidos del SDK.

Importante

La administración de certificados en IoT Hub está en versión preliminar y solo se admite en los siguientes SDK de dispositivo DPS: Embedded C (Bare metal, Free RTOS), C y Python. Los SDKs IoT Hub no lo soportan. Para obtener más información, consulte ¿Qué es la administración de certificados?

Categorías del SDK

Tres categorías de kits de desarrollo de software (SDK) funcionan con DPS:

  • SDK de dispositivo de DPS: proporcionan operaciones del plano de datos para los dispositivos. Use el SDK de dispositivo para aprovisionar un dispositivo a través de DPS.

  • SDK de servicio de DPS: proporcionan operaciones del plano de datos para aplicaciones de back-end. Use los SDK de servicio para crear y administrar inscripciones individuales y grupos de inscripción, así como para consultar y administrar registros de registro de dispositivos.

  • SDK de administración de DPS: proporcionan operaciones del plano de control para aplicaciones de back-end. Use los SDK de administración para crear y administrar instancias y metadatos de DPS. Por ejemplo, úselos para crear y administrar instancias de DPS en la suscripción, cargar y comprobar certificados con una instancia de DPS, o para crear y administrar directivas de autorización o directivas de asignación en una instancia de DPS.

Los SDK de DPS facilitan el aprovisionamiento de dispositivos en los centros de IoT. Microsoft también proporciona un conjunto de SDK para ayudarle a crear aplicaciones de dispositivo y de back-end que se comunican directamente con Azure IoT Hub. Por ejemplo, para ayudar a los dispositivos aprovisionados a enviar telemetría a IoT Hub y, opcionalmente, recibir mensajes y actualizaciones de trabajos, métodos o gemelos de su centro de IoT. Para obtener más información, consulte SDK de Azure IoT Hub.

SDK de dispositivo

Los SDK de dispositivo DPS permiten que los dispositivos se registren con DPS y reciban su asignación de IoT Hub. Use los SDK de dispositivo para implementar el aprovisionamiento del lado del dispositivo con clave simétrica, certificado X.509 o atestación de TPM. Los SDK de dispositivos de plataforma están disponibles para los dispositivos que ejecutan un sistema operativo completo y los SDK de dispositivos incrustados están disponibles para dispositivos basados en microcontroladores y restringidos por recursos.

SDK de dispositivos de plataforma

Los SDK de dispositivo de DPS proporcionan implementaciones de la API Register y otras que los dispositivos llaman para el aprovisionamiento a través de DPS. Estos SDK de dispositivo se pueden ejecutar en dispositivos informáticos generales basados en MPU, como PC, tabletas, smartphones o Raspberry Pi. Los SDK admiten el desarrollo en C y en lenguajes administrados modernos, incluidos en C#, Node.js, Python y Java.

En la tabla siguiente se enumeran los SDK de dispositivo disponibles para cada idioma admitido.

Plataforma Paquete Repositorio de código Ejemplos Inicio rápido Referencia
.NET NuGet GitHub Muestras Inicio rápido Referencia
C apt-get, MBED, Arduino IDE o iOS GitHub Muestras Inicio rápido Referencia
Java Maven GitHub Muestras Inicio rápido Referencia
Node.js npm GitHub Muestras Inicio rápido Referencia
Python pip GitHub Muestras Inicio rápido Referencia

Advertencia

El SDK de C mencionado anteriormente no es adecuado para las aplicaciones insertadas debido a su modelo de administración de memoria y subprocesos. Para los dispositivos insertados, consulte SDK de dispositivos insertados.

SDK de dispositivos de administración de certificados (versión preliminar)

Para los SDK que admiten la administración de certificados X.509 respaldados por Microsoft en versión preliminar, use las instrucciones y ejemplos siguientes.

Plataforma Instrucciones Ejemplo
C Instrucciones Ejemplo
Python Instrucciones Ejemplo

SDK de dispositivos insertados

Estos SDK se han diseñado y creado para ejecutarse en dispositivos con recursos limitados de proceso y memoria, y se implementan con el lenguaje C.

RTOS SDK Source Ejemplos Referencia
Eclipse ThreadX Middleware de Azure RTOS GitHub Guías de inicio rápido Referencia
FreeRTOS FreeRTOS Middleware GitHub Muestras Referencia
Metal desnudo SDK de Azure para C insertado GitHub Muestras Referencia

Obtenga más información sobre los SDK de dispositivo y de dispositivo insertado en SDK de IoT.

SDK de dispositivos insertados de administración de certificados (versión preliminar)

Para los SDK insertados que admiten la administración de certificados X.509 con respaldo de Microsoft en versión preliminar, use las instrucciones y ejemplos siguientes:

RTOS SDK Instrucciones Ejemplo
FreeRTOS FreeRTOS Middleware Instrucciones Ejemplo
Metal desnudo SDK de Azure para C insertado Instrucciones Ejemplo

SDK de servicio

Los SDK de servicio de DPS facilitan la creación de aplicaciones de back-end para administrar inscripciones y entradas de registro en instancias de DPS.

Plataforma Paquete Repositorio de código Ejemplos Inicio rápido Referencia
.NET NuGet GitHub Muestras Inicio rápido Referencia
Java Maven GitHub Muestras Inicio rápido Referencia
Node.js npm GitHub Muestras Inicio rápido Referencia

SDK de administración

Los SDK de administración de DPS facilitan la creación de aplicaciones de back-end que administran las instancias de DPS y sus metadatos en una suscripción de Azure.

Plataforma Paquete Repositorio de código Referencia
.NET NuGet GitHub Referencia
Java Maven GitHub Referencia
Node.js npm GitHub Referencia
Python pip GitHub Referencia

Pasos siguientes

La documentación de Device Provisioning Service proporciona tutoriales y ejemplos adicionales que puede usar para probar los SDK y las bibliotecas.