Hochladen der Firmware-Datei in einen S3-Bucket und Hinzufügen einer IAM-Rolle - AWS IoT Wireless

Hochladen der Firmware-Datei in einen S3-Bucket und Hinzufügen einer IAM-Rolle

Sie können Amazon S3 verwenden, um einen Bucket zu erstellen. Dabei handelt es sich um einen Container, in dem Ihre Firmware-Aktualisierungsdatei gespeichert werden kann. Sie können Ihre Datei in den S3-Bucket hochladen und eine IAM-Rolle hinzufügen, die es dem CUPS-Server ermöglicht, Ihre Aktualisierungsdatei aus dem Bucket zu lesen. Weitere Informationen zum Erstellen von Amazon-S3-Buckets finden Sie unter Erste Schritte mit Amazon S3.

Die Firmware-Aktualisierungsdatei, die Sie hochladen möchten, hängt vom verwendeten Gateway ab. Wenn Sie ein Verfahren befolgt haben, das dem unter Generieren der Firmware-Aktualisierungsdatei und Signatur beschriebenen ähnelt, laden Sie die durch die Ausführung der Skripts generierte fwstation Datei hoch.

Dieser Vorgang dauert etwa 20 Minuten.

Erstellen Sie einen Amazon S3 Bucket und laden Sie die aktualisierte Datei hoch.

Sie erstellen mit dem AWS Management Console einen Amazon-S3-Bucket und laden dann Ihre Firmware-Aktualisierungsdatei in den Bucket hoch.

Erstellen eines S3-Buckets

Um einen S3-Bucket zu erstellen, öffnen Sie die Amazon-S3-Konsole. Melden Sie sich an, falls Sie dies noch nicht getan haben, und führen Sie dann die folgenden Schritte aus:

  1. Wählen Sie Bucket erstellen aus.

  2. Geben Sie einen eindeutigen und aussagekräftigen Namen für den Bucket-Namen ein (z. B. iotwirelessfwupdate). Eine empfohlene Benennungskonvention für Ihren Bucket finden Sie unter https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html.

  3. Stellen Sie sicher, dass Sie AWS-Region ausgewählt haben, das Sie zur Erstellung Ihres LoRaWAN-Gateways und -Geräts verwendet haben, und dass die Einstellung Allen öffentlichen Zugriff blockieren ausgewählt ist, sodass Ihr Bucket die Standardberechtigungen verwendet.

  4. Wählen Sie Aktivieren für die Bucket-Versionsverwaltung, damit Sie mehrere Versionen der Firmware-Aktualisierungsdatei im selben Bucket speichern können.

  5. Vergewissern Sie sich, dass serverseitige Verschlüsselung auf Deaktivieren eingestellt ist, und wählen Sie Bucket erstellen aus.

Laden Sie Ihre Firmware-Aktualisierungsdatei hoch

Sie können Ihren Bucket jetzt in der Liste der Buckets sehen, die im AWS Management Console angezeigt wird. Wählen Sie Ihren Bucket aus und führen Sie die folgenden Schritte aus, um Ihre Datei hochzuladen.

  1. Wählen Sie Ihren Bucket aus und dann Hochladen.

  2. Wählen Sie Datei hinzufügen und laden Sie dann die Firmware-Aktualisierungsdatei hoch. Wenn Sie das unter Generieren der Firmware-Aktualisierungsdatei und Signatur beschriebene Verfahren befolgt haben, laden Sie die fwstation Datei hoch, andernfalls laden Sie die von Ihrem Gateway-Hersteller bereitgestellte Datei hoch.

  3. Stellen Sie sicher, dass alle Einstellungen auf die Standardeinstellungen festgelegt sind. Vergewissern Sie sich, dass Vordefinierte ACLs auf Privat festgelegt ist, und wählen Sie Hochladen, um Ihre Datei hochzuladen.

  4. Kopieren Sie die S3-URI der Datei, die Sie hochgeladen haben. Wählen Sie Ihren Bucket aus und die Datei, die Sie hochgeladen haben, wird in der Objektliste angezeigt. Wählen Sie Ihre Datei aus und dann S3-URI kopieren. Die URI wird etwa so aussehen: s3://iotwirelessfwupdate/fwstation, wenn Sie Ihren Bucket ähnlich dem zuvor beschriebenen Beispiel benannt haben (fwstation). Sie verwenden den S3-URI, wenn Sie die IAM-Rolle erstellen.

Erstellen einer IAM-Rolle mit Leserechten für den S3-Bucket

Sie erstellen jetzt eine IAM-Rolle und -Richtlinie, die CUPS die Erlaubnis geben, Ihre Firmware-Aktualisierungsdatei aus dem S3-Bucket zu lesen.

Erstellen Sie eine IAM-Richtlinie für Ihre Rolle.

Um eine IAM-Richtlinie für Ihre AWS IoT Core for LoRaWAN-Zielrolle zu erstellen, öffnen Sie den Richtlinien-Hub der IAM-Konsole und führen Sie dann die folgenden Schritte aus:

  1. Wählen Sie Richtlinie erstellen und anschließend die Registerkarte JSON.

  2. Löschen Sie alle Inhalte aus dem Editor und fügen Sie dieses Richtliniendokument ein. Die Richtlinie gewährt Berechtigungen für den Zugriff auf den iotwireless-Bucket und die Firmware-Aktualisierungsdatei fwstation, die in einem Objekt gespeichert sind.

    { "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. Wählen Sie Richtlinie überprüfen aus, und geben Sie im Feld Name einen Namen für diese Richtlinie ein (z. B. IoTWirelessFwUpdatePolicy). Sie benötigen diesen Namen, um ihn im nächsten Verfahren zu verwenden.

  4. Wählen Sie Richtlinie erstellen aus.

Erstellen Sie eine IAM-Rolle mit der angehängten Richtlinie.

Sie erstellen jetzt eine IAM-Rolle und fügen die zuvor erstellte Richtlinie für den Zugriff auf den S3-Bucket an. Öffnen Sie den Rollen-Hub der IAM-Konsole und führen Sie die folgenden Schritte aus:

  1. Wählen Sie Rolle erstellen aus.

  2. Unter Typ der vertrauenswürdigen Entität auswählen, wählen Sie die Option Weiteres AWS-Konto aus.

  3. Geben Sie unter Konto-ID Ihre AWS-Konto-ID ein und wählen Sie dann Weiter: Berechtigungen aus.

  4. Geben Sie im Suchfeld den Namen der IAM-Richtlinie ein, die Sie im vorherigen Verfahren erstellt haben. Überprüfen Sie die IAM-Richtlinie (z. B.IoTWirelessFwUpdatePolicy), die Sie zuvor in den Suchergebnissen erstellt haben, und wählen Sie sie aus.

  5. Wählen Sie Weiter: Tags und danach Weiter: Prüfen aus.

  6. Geben Sie für Name der Rolle einen Namen für Ihre Rolle ein (z. B. IoTWirelessFwUpdateRole) und wählen Sie dann Rolle erstellen aus.

So bearbeiten Sie die Vertrauensbeziehung für die IAM-Rolle.

Wählen Sie in der Bestätigungsnachricht, die nach dem Ausführen des vorherigen Schritts angezeigt wird, den Namen der von Ihnen erstellten Rolle, um sie zu bearbeiten. Als Nächstes bearbeiten Sie die Rolle, um die folgende Vertrauensbeziehung hinzuzufügen.

  1. Wählen Sie auf der Seite Zusammenfassung für die eben erstellte Rolle die Registerkarte Vertrauensbeziehung und dann Vertrauensbeziehung bearbeiten aus.

  2. Ändern Sie im Richtliniendokument die Principal-Eigenschaft so, dass sie wie in diesem Beispiel aussieht.

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

    Nachdem Sie die Principal-Eigenschaft geändert haben, sollte das vollständige Richtliniendokument wie in diesem Beispiel aussehen.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iotwireless.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": {} } ] }
  3. Wählen Sie Vertrauensrichtlinie aktualisieren aus, um die Änderungen zu speichern.

  4. Besorgen Sie sich den ARN für Ihre Rolle. Wählen Sie Ihre IAM-Rolle aus. Im Abschnitt Zusammenfassung wird ein Rollen-ARN angezeigt, z. B. arn:aws:iam::123456789012:role/IoTWirelessFwUpdateRole. Kopieren Sie die Rolle ARN.

Überprüfen Sie die nächsten Schritte

Nachdem Sie den S3-Bucket und eine IAM-Rolle erstellt haben, die es dem CUPS-Server ermöglicht, den S3-Bucket zu lesen, fahren Sie mit dem nächsten Thema fort, um das Firmware-Update zu planen und auszuführen. Behalten Sie den S3-URI und die Rollen-ARN, die Sie zuvor kopiert haben, sodass Sie sie eingeben können, um eine Aufgabendefinition zu erstellen, die zur Durchführung des Firmware-Updates ausgeführt wird.