Conexión de dispositivos a AWS IoT - AWS IoT Core

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Conexión de dispositivos a AWS IoT

Los dispositivos se conectan a otros servicios AWS IoT y a través de ellos AWS IoT Core. De este modo AWS IoT Core, los dispositivos envían y reciben mensajes mediante puntos de conexión específicos de su cuenta. Los AWS IoT SDK de dispositivo admiten comunicaciones entre dispositivos mediante los protocolos MQTT y WSS. Para obtener más información acerca de los protocolos que pueden usar los dispositivos, consulte Protocolos de comunicación de dispositivos.

Agente de mensajes

AWS IoT gestiona la comunicación de los dispositivos a través de un intermediario de mensajes. Los dispositivos y los clientes publican los mensajes en el agente de mensajes y también se suscriben a los mensajes que publica el agente de mensajes. Los mensajes se identifican mediante un tema definido por la aplicación. Cuando el agente de mensajes recibe un mensaje publicado por un dispositivo o un cliente, lo vuelve a publicar en los dispositivos y clientes que estén suscritos a ese tema. El agente de mensajes también reenvía los mensajes al motor de AWS IoT reglas, que puede actuar sobre el contenido del mensaje.

AWS IoT seguridad de los mensajes

Conexiones de dispositivos que se AWS IoT van a utilizar Certificados de cliente X.509 y AWS firma V4 para la autenticación. Las comunicaciones de los dispositivos están protegidas por la versión 1.3 de TLS y AWS IoT requieren que los dispositivos envíen la extensión de indicación del nombre del servidor (SNI) al conectarse. Para obtener más información, consulte Seguridad del transporte en. AWS IoT

AWS IoT datos del dispositivo y puntos finales de servicio

importante

Puede almacenar o almacenar en caché los puntos de conexión de su dispositivo. Esto significa que no tendrá que consultar la API de DescribeEndpoint cada vez que conecte un dispositivo nuevo. Los puntos de conexión no cambiarán después de AWS IoT Core crearlos para tu cuenta.

Cada cuenta tiene varios puntos de conexión de dispositivo que son exclusivos de la cuenta y admiten funciones de IoT específicas. Los puntos finales de datos del AWS IoT dispositivo admiten un protocolo de publicación/suscripción diseñado para las necesidades de comunicación de los dispositivos de IoT; sin embargo, otros clientes, como aplicaciones y servicios, también pueden usar esta interfaz si su aplicación requiere las funciones especializadas que proporcionan estos puntos finales. Los puntos finales del servicio de los AWS IoT dispositivos permiten el acceso centrado en los dispositivos a los servicios de seguridad y administración.

Para conocer el punto de conexión de datos del dispositivo de tu cuenta, puedes encontrarlo en la página de configuración de la consola. AWS IoT Core

Si quiere saber cuál es el punto de conexión del dispositivo de su cuenta para una finalidad concreta, incluido el punto de conexión de datos del dispositivo, utilice el comando describe-endpoint de la CLI que se muestra aquí o la API de REST DescribeEndpoint y proporcione el valor del parámetro endpointType de la siguiente tabla.

aws iot describe-endpoint --endpoint-type endpointType

Este comando devuelve un iot-endpoint en el formato siguiente: account-specific-prefix.iot.aws-region.amazonaws.com.

Cada cliente tiene un punto de conexión iot:Data-ATS y iot:Data. Cada punto de conexión utiliza un certificado X.509 para autenticar al cliente. Recomendamos a los clientes que utilicen el tipo de punto de conexión iot:Data-ATS más reciente para evitar problemas relacionados con la desconfianza generalizada en las entidades de certificación de Symantec. Proporcionamos el iot:Data terminal para que los dispositivos recuperen datos de terminales antiguos que utilizan VeriSign certificados de compatibilidad con versiones anteriores. Para obtener más información, consulte Autenticación del servidor.

AWS IoT puntos finales para dispositivos

Finalidad del punto de conexión

Valor de endpointType

Descripción

Operaciones de plano de datos de AWS IoT Core

iot:Data-ATS

Se utiliza para enviar y recibir datos desde y hacia los componentes agente de mensajes, Device Shadow y Rules Engine de AWS IoT.

iot:Data-ATS devuelve un punto de conexión de datos firmados por ATS.

Operaciones de plano de datos de AWS IoT Core(heredadas)

iot:Data

iot:Datadevuelve un punto final de datos VeriSign firmado que se proporciona para garantizar la compatibilidad con versiones anteriores. Los puntos de conexión de Symantec (iot:Data) no admiten MQTT 5.

AWS IoT Core acceso mediante credenciales

iot:CredentialProvider

Se utiliza para intercambiar el certificado X.509 integrado en un dispositivo por credenciales temporales con el fin de conectarse directamente con otros servicios de AWS . Para obtener más información sobre cómo conectarse a otros AWS servicios, consulte Autorización de llamadas directas a AWS servicios.

Operaciones de datos de trabajos de AWS IoT Device Management

iot:Jobs

Se utiliza para permitir que los dispositivos interactúen con el servicio AWS IoT Jobs mediante las API HTTPS de Jobs Device.

AWS IoT Operaciones de Device Advisor

iot:DeviceAdvisor

Un tipo de punto de conexión de prueba que se utiliza para probar dispositivos con Device Advisor. Para obtener más información, consulte Asesor de dispositivos.

AWS IoT Core versión beta de datos (versión preliminar)

iot:Data-Beta

Un tipo de punto de conexión reservado para las versiones beta. Para obtener información sobre su uso actual, consulte Puntos de enlace configurables.

También puede usar su propio nombre de dominio completo (FQDN), como example.com, y el certificado de servidor asociado para conectar los dispositivos mediante. AWS IoT Puntos de enlace configurables

AWS IoT SDK de dispositivo

Los SDK de AWS IoT dispositivos le ayudan a conectar sus dispositivos de IoT AWS IoT Core y son compatibles con los protocolos MQTT y MQTT sobre WSS.

Los SDK de AWS IoT dispositivos se diferencian de AWS los SDK en que los SDK de AWS IoT dispositivos admiten las necesidades de comunicación especializadas de los dispositivos de IoT, pero no admiten todos los servicios compatibles con los SDK. AWS Los SDK de AWS IoT dispositivos son compatibles con los AWS SDK que admiten todos los AWS servicios; sin embargo, utilizan diferentes métodos de autenticación y se conectan a diferentes puntos finales, lo que podría hacer que el uso de los AWS SDK no fuera práctico en un dispositivo de IoT.

Dispositivos móviles

Son AWS SDK móviles compatibles tanto con las comunicaciones MQTT entre dispositivos como con algunas de las API de AWS IoT servicio y con las API de otros servicios. AWS Si está desarrollando en un dispositivo móvil compatible, revise el SDK para ver si es la mejor opción para desarrollar su solución de IoT.

C++

AWS IoT SDK para dispositivos C++

El SDK para dispositivos de AWS IoT C++ permite a los desarrolladores crear aplicaciones conectadas utilizando AWS las API de los AWS IoT Core servicios. En concreto, este SDK se diseñó para los dispositivos que no tienen limitación de recursos y requieren características avanzadas, como la puesta en cola de mensajes, la compatibilidad con varios procesos y las características de idioma más actualizadas. Para más información, consulte los siguientes temas:

Python

AWS IoT SDK de dispositivo para Python

El SDK de AWS IoT dispositivos para Python permite a los desarrolladores escribir scripts de Python para usar sus dispositivos para acceder a la AWS IoT plataforma a través de MQTT o MQTT a través del protocolo WebSocket Secure (WSS). Al conectar sus dispositivos a las API de los AWS IoT Core servicios, los usuarios pueden trabajar de forma segura con el agente de mensajes, las reglas y el servicio Device Shadow que AWS IoT Core proporciona AWS Lambda, así como con otros AWS servicios como Amazon Kinesis y Amazon S3, entre otros.

JavaScript

AWS IoT SDK de dispositivo para JavaScript

El SDK para AWS IoT dispositivos JavaScript permite a los desarrolladores escribir JavaScript aplicaciones que accedan a las API si AWS IoT Core utilizan MQTT o MQTT a través del WebSocket protocolo. Se puede utilizar en entornos de Node.js y aplicaciones de navegador. Para más información, consulte los siguientes temas:

Java

AWS IoT SDK de dispositivo para Java

El AWS IoT Device SDK for Java permite a los desarrolladores de Java acceder a las API a AWS IoT Core través de MQTT o MQTT a través del WebSocket protocolo. El SDK admite el servicio Device Shadow. Puede tener acceso a las sombras mediante los métodos GET, UPDATE y DELETE de HTTP. El SDK es también compatible con un modelo de acceso a sombras simplificado, lo que permite a los desarrolladores intercambiar datos con las sombras utilizando métodos getter y setter, sin tener que serializar ni deserializar documentos JSON. Para más información, consulte los siguientes temas:

Embedded C

AWS IoT SDK de dispositivo para C integrado

importante

Este SDK está diseñado para que lo utilicen desarrolladores de software incrustado con experiencia.

El AWS IoT Device SDK para Embedded C (C-SDK) es una colección de archivos fuente en C bajo la licencia de código abierto del MIT que se puede usar en aplicaciones integradas para conectar de forma segura dispositivos de IoT a AWS IoT Core. Incluye las bibliotecas MQTT, JSON Parser y AWS IoT Device Shadow, entre otras. Se distribuye como código fuente y está diseñado para integrarse en el firmware cliente junto con código de aplicación, otras bibliotecas y, opcionalmente, RTOS (Real Time Operating System).

Por lo general, AWS IoT Device SDK para Embedded C está dirigido a dispositivos con recursos limitados que requieren un tiempo de ejecución optimizado en lenguaje C. Puede usar el SDK en cualquier sistema operativo y alojarlo en cualquier tipo de procesador (por ejemplo, MCU y MPU). Si su dispositivo tiene suficientes recursos de memoria y procesamiento disponibles, le recomendamos que utilice uno de los otros SDK para AWS IoT dispositivos y dispositivos móviles, como el SDK de AWS IoT dispositivos para C++ JavaScript, Java o Python.

Para más información, consulte los siguientes temas: