Suba el archivo de firmware en un bucket de S3 y agregue un rol de IAM - AWS IoT Wireless

Suba el archivo de firmware en un bucket de S3 y agregue un rol de IAM

Puede usar Amazon S3 para crear un bucket, que es un contenedor que puede almacenar el archivo de actualización del firmware. Puede subir el archivo en el bucket de S3 y agregar un rol de IAM que permita al servidor CUPS leer el archivo de actualización del bucket. Para obtener más información sobre S3, consulte Introducción a Amazon S3.

El archivo de actualización de firmware que desee subir depende de la puerta de enlace que utilice. Si ha seguido un procedimiento similar al descrito en Genere el archivo de actualización del firmware y la firma, subirá el archivo fwstation generado al ejecutar los scripts.

Este proceso tardará alrededor de 20 minutos en completarse.

Cree un bucket de Amazon S3 y suba el archivo de actualización

Creará un bucket de Amazon S3 mediante el bucket AWS Management Console y, a continuación, subirá el archivo de actualización de firmware en el bucket.

Cree un bucket de S3

Para crear un bucket de S3 con la consola de Amazon S3. Inicie sesión si aún no lo ha hecho y, a continuación, lleve a cabo los siguientes pasos:

  1. Elija Crear bucket.

  2. Introduzca un nombre único y significativo para el Nombre del bucket (por ejemplo, iotwirelessfwupdate). Para conocer la convención de nomenclatura recomendada para su bucket, consulte https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html.

  3. Asegúrese de seleccionar la opción Región de AWS elegida como la que utilizó para crear la puerta de enlace y el dispositivo LoRaWAN, y de que el ajuste Bloquear todo el acceso público esté seleccionado para que su bucket utilice los permisos predeterminados.

  4. Seleccione Habilitar en Control de versiones de buckets, que le ayudará a mantener varias versiones del archivo de actualización del firmware en el mismo bucket.

  5. Confirme que Cifrado del lado del servidor esté configurado como Deshabilitado y seleccione Crear bucket.

Suba el archivo de actualización del firmware

Ahora puede ver su bucket en la lista de buckets que se muestra en la AWS Management Console. Elige su bucket y complete los siguientes pasos para subir su archivo.

  1. Elija su bucket y seleccione Cargar.

  2. Seleccione Agregar archivo y, a continuación, suba el archivo de actualización del firmware. Si ha seguido el procedimiento descrito en Genere el archivo de actualización del firmware y la firma, subirá el archivo fwstation; de lo contrario, subirá el archivo proporcionado por el fabricante de la puerta de enlace.

  3. Asegúrese de que todos los ajustes estén configurados de forma predeterminada. Asegúrese de que ACL predefinidas esté configurado como privadas y seleccione Cargar para subir el archivo.

  4. Copie el URI de S3 del archivo que ha subido. Elija su bucket y verá el archivo que subió en la lista Objetos. Elija su archivo y, a continuación, seleccione Copiar URI de S3. El URI será algo parecido a lo siguiente: s3://iotwirelessfwupdate/fwstation si asignó a su bucket un nombre similar al descrito anteriormente (fwstation). Utilizará el URI de S3 al crear el rol de IAM.

Cree un rol de IAM con permisos para leer el bucket de S3

Ahora creará un rol y una política de IAM que permitirán a CUPS leer el archivo de actualización del firmware desde el bucket de S3.

Cree una política de IAM para su rol

Para crear una política de IAM para su rol de destino de AWS IoT Core para LoRaWAN, abra la Central de políticas de la consola de IAM y, a continuación, complete los siguientes pasos:

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

  2. Elimine cualquier contenido del editor y pegue este documento de política. La política proporciona permisos para acceder al bucket de iotwireless al archivo de actualización del firmware, fwstation, almacenados dentro de un objeto.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:ListBucketVersions", "s3:ListBucket", "s3:GetObject" ], "Resource": [ "arn:aws:s3:::iotwirelessfwupdate/fwstation", "arn:aws:s3:::iotwirelessfwupdate" ] } ] }
  3. Elija Revisar la política y en Nombre introduzca un nombre para esta política (por ejemplo, IoTWirelessFwUpdatePolicy). Necesitará este nombre para usarlo en el procedimiento siguiente.

  4. Elija Crear política.

Cree un rol de IAM con la política asociada

Ahora creará un rol de IAM y anexará la política creada anteriormente para acceder al bucket de S3. Abra la Central de roles de la consola de IAM y complete los siguientes pasos:

  1. 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. Compruebe la política de IAM (por ejemplo, IoTWirelessFwUpdatePolicy) que creó anteriormente en los resultados de búsqueda y selecciónela.

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

  6. En Nombre de rol, introduzca un nombre para el rol, (por ejemplo, IoTWirelessFwUpdateRole) y elija Crear rol.

Editar la relación de confianza del rol de IAM

En el mensaje de confirmación que aparece después de ejecutar el paso anterior, elija el nombre del rol que creó para editarlo. Editará el rol para agregar la siguiente relación de confianza.

  1. En la sección Resumen del rol que acaba de crear, elija la pestaña Relaciones de confianza y, después, seleccione Editar relaciones de confianza.

  2. 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": {} } ] }
  3. Para guardar los cambios, elija Actualizar política de confianza.

  4. Obtenga el ARN para su rol. Elija su rol de IAM y, en la sección Resumen, verá un ARN del rol, como arn:aws:iam::123456789012:role/IoTWirelessFwUpdateRole. Copie este ARN del rol.

Revisar los siguientes pasos

Ahora que ha creado el bucket de S3 y un rol de IAM que permite al servidor CUPS leer el bucket de S3, pase al tema siguiente para programar y ejecutar la actualización del firmware. Conserve el URI de S3 y el ARN de rol que copió anteriormente para poder introducirlos y crear una definición de tarea que se ejecutará para realizar la actualización del firmware.