Agregar destinos a AWS IoT Core para LoRaWAN - AWS IoT Wireless

Agregar destinos a AWS IoT Core para LoRaWAN

Los destinos de AWS IoT Core for LoRaWAN describen la regla de AWS IoT que procesa los datos de un dispositivo para su uso por parte de los servicios de AWS.

Como la mayoría de los dispositivos LoRaWAN no envían datos a AWS IoT Core for LoRaWAN en un formato que puedan utilizar los servicios de AWS, una regla de AWS IoT debe procesarlos primero. La regla de AWS IoT contiene la instrucción SQL que interpreta los datos del dispositivo y las acciones de la regla temática que envían el resultado de la instrucción SQL a los servicios que la utilizarán.

Si es la primera vez que agrega el destino, le recomendamos que use la consola.

Agregar un destino mediante la consola

Si desea agregar un dispositivo inalámbrico mediante la consola como se describe en Agregar las especificaciones de un dispositivo inalámbrico a AWS IoT Core para LoRaWAN con la consola, después de haber agregado las especificaciones y los perfiles del dispositivo inalámbrico a AWS IoT Core para LoRaWAN como se describió anteriormente, puede continuar y agregar un destino.

Como alternativa, también puede agregar un destino de AWS IoT Core para LoRaWAN desde la página Destinos de la consola de AWS IoT.

Para procesar los datos de un dispositivo, especifique los siguientes campos al crear un destino de AWS IoT Core for LoRaWAN y, a continuación, elija Agregar destino.

  • Detalles de destino

    Introduzca un Nombre de destino y una descripción opcional para su destino.

  • Nombre de la regla

    La regla de AWS IoT que se configura para evaluar los mensajes enviados por el dispositivo y procesar los datos del dispositivo. El nombre de la regla se asignará a su destino. El destino requiere que la regla procese los mensajes que recibe. Puede elegir que los mensajes se procesen invocando una regla de AWS IoT o publicándolos en el agente de mensajes de AWS IoT.

    • Si selecciona Introducir un nombre de regla, introduzca un nombre y, a continuación, elija Copiar para copiar el nombre de la regla que introducirá al crear la regla de AWS IoT. Puede elegir Crear regla para crear la regla ahora o ir al Centro de reglas de la consola de AWS IoT y crear una regla con ese nombre.

      También puede introducir una regla y usar la configuración Avanzada para especificar el nombre de un tema. El nombre del tema se proporciona durante la invocación de la regla y se accede a él mediante la expresión topic incluida en la regla. Para obtener más información acerca de las reglas de AWS IoT, consulte https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html.

    • Si elige Publicar en el agente de mensajes de AWS IoT, introduzca el nombre del tema. A continuación, puede copiar el nombre del tema de MQTT y varios suscriptores podrán suscribirse a este tema para recibir los mensajes publicados sobre ese tema. Para obtener más información, consulte https://docs.aws.amazon.com/iot/latest/developerguide/topics.html.

    Para obtener más información sobre las reglas de AWS IoT, consulte Crear reglas para procesar los mensajes del dispositivo LoRaWAN.

  • Nombre de rol

    El rol de IAM que concede a los datos del dispositivo el permiso para acceder a la regla nombrada Nombre de regla. En la consola, elija un rol de servicio existente o cree uno nuevo. Si va a crear un nuevo rol de servicio, puede introducir un nombre de rol (por ejemplo, IoTWirelessDestinationRole) o dejarlo en blanco para que AWS IoT Core para LoRaWAN genere un nuevo nombre de rol. AWS IoT Core para LoRaWAN creará automáticamente el rol de IAM con los permisos adecuados en su nombre.

    Para obtener más información sobre los roles de IAM, consulte Uso de roles de IAM.

Agregar un destino mediante la API

Si, en su lugar, desea agregar un destino mediante la CLI, debe haber creado ya la regla y el rol de IAM para su destino. Para obtener más información acerca de los detalles que un destino requiere en la función, consulte Crear un rol de IAM para los destinos.

La siguiente lista contiene las acciones de la API que realizan las tareas asociadas a agregar, actualizar o eliminar un destino.

Acciones de la API de AWS IoT Wireless para destinos

Para ver la lista completa de las acciones y los tipos de datos disponibles para crear y administrar recursos de AWS IoT Core para LoRaWAN, consulte la referencia de la API de AWS IoT Wireless.

Cómo utilizar la AWS CLI para agregar un destino

Puede utilizar la AWS CLI para agregar un destino mediante el comando create-destination. En el siguiente ejemplo, se muestra cómo crear un destino introduciendo el nombre de una regla de RuleName como valor para el parámetro expression-type. Si desea especificar un nombre de tema para publicarlo o suscribirse al agente de mensajes, cambie el valor del parámetro expression-type a MqttTopic.

aws iotwireless create-destination \ --name IoTWirelessDestination \ --expression-type RuleName \ --expression IoTWirelessRule \ --role-arn arn:aws:iam::123456789012:role/IoTWirelessDestinationRole

Al ejecutar este comando, se crea un destino con el nombre del destino, el nombre de la regla y el nombre del rol especificados. Para obtener información sobre los nombres de reglas y roles de los destinos, consulte Crear reglas para procesar los mensajes del dispositivo LoRaWAN y Crear un rol de IAM para los destinos.

Para obtener información sobre las CLI que puede usar, consulte la referencia de AWS CLI.

Crear un rol de IAM para los destinos

Los destinos de AWS IoT Core para LoRaWAN requieren roles de IAM que otorguen a AWS IoT Core para LoRaWAN los permisos necesarios para enviar datos a la regla de AWS IoT. Si dicho rol aún no está definido, debe definirlo para que aparezca en la lista de roles.

Cuando utiliza la consola para agregar un destino, AWS IoT Core para LoRaWAN crea automáticamente un rol de IAM para sí, tal y como se describió anteriormente en este tema. Cuando agrega un destino mediante la API o la CLI, debe crear el rol de IAM para su destino.

Para crear una política de IAM para su rol de destino de AWS IoT Core para LoRaWAN
  1. Abra la página Central de políticas de la consola de IAM.

  2. Elija Crear política y, a continuación, elija la pestaña JSON.

  3. En el editor, elimine cualquier contenido del editor y pegue este documento de política.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:DescribeEndpoint", "iot:Publish" ], "Resource": "*" } ] }
  4. En Revisar política, en Nombre, escriba un nombre para la política. Necesitará este nombre para usarlo en el procedimiento siguiente.

    Si lo desea, también puede describir esta política en Descripción.

  5. Elija Crear política.

Para crear un rol de IAM para un destino de AWS IoT Core para LoRaWAN
  1. Abra la página Hub de roles de la consola de IAM y elija Crear rol.

  2. En Seleccionar el tipo de entidad de confianza, elija Otra Cuenta de AWS.

  3. En ID de cuenta, introduzca su ID de Cuenta de AWS y, a continuación, seleccione Siguiente: Permisos.

  4. En el cuadro de búsqueda, escriba el nombre de la política de IAM que creó en el procedimiento anterior.

  5. En los resultados de la búsqueda, compruebe la política de IAM creada en el procedimiento anterior.

  6. Elija Siguiente: Etiqueta y, a continuación, seleccione Siguiente: Revisar.

  7. En Nombre del rol, introduzca el nombre de este rol y, a continuación, elija Crear rol.

  8. En el mensaje de confirmación, seleccione el nombre del rol que creó para editar el nuevo rol.

  9. En la página Resumen, elija Relaciones de confianza y, a continuación, elija Editar relación de confianza.

  10. En el Documento de política, cambie la propiedad Principal para que tenga el aspecto que se muestra en este ejemplo.

    "Principal": { "Service": "iotwireless.amazonaws.com" },

    Tras cambiar la propiedad Principal, el documento de política completo deberá tener el aspecto que se muestra en este ejemplo.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iotwireless.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": {} } ] }
  11. Para guardar los cambios, elija Actualizar política de confianza.

Con este rol definido, puede encontrarlo en la lista de roles al configurar sus destinos de AWS IoT Core para LoRaWAN.