Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwalten von Aufträgen
Verwenden Sie Jobs, um Geräte über ein Software- oder Firmware-Update zu informieren. Sie können das verwendenAWS IoTKonsole
Codesigning für Jobs
Damit Geräte beim Senden von Code an Geräte erkennen können, ob der Code während der Übertragung geändert wurde, empfehlen wir, die Codedatei mit demAWS CLI. Anweisungen finden Sie unterErstellen und verwalten Sie Jobs mithilfe desAWS CLI.
Weitere Informationen finden Sie unterWofür ist Code SigningAWS IoT?.
Stellendokument
Bevor Sie einen Auftrag erstellen, müssen Sie ein Auftragsdokument erstellen. Wenn Sie Code Signing verwenden fürAWS IoT, müssen Sie Ihr Stellendokument in einen versionierten Amazon S3-Bucket hochladen. Weitere Informationen zum Erstellen eines Amazon S3-Buckets und zum Hochladen von Dateien in diesen Bucket finden Sie unterErste Schritte mit Amazon Simple Storage Servicein derAmazon S3-Handbuch „Erste Schritte“.
Tipp
Beispiele für Stellendokumente finden Sie in derjobs-agent.js
Vorsignierte URLs
Ihr Auftragsdokument kann eine vorsignierte Amazon S3-URL enthalten, die auf Ihre Codedatei (oder eine andere Datei) verweist. Vorsignierte Amazon S3-URLs sind nur für einen begrenzten Zeitraum gültig und werden generiert, wenn ein Gerät ein Auftragsdokument anfordert. Da die vorsignierte URL nicht erstellt wird, wenn Sie das Stellendokument erstellen, verwenden Sie stattdessen eine Platzhalter-URL in Ihrem Stellendokument. Eine Platzhalter-URL sieht wie folgt aus:
${aws:iot:s3-presigned-url:https://s3.region.amazonaws.com/
<bucket>
/<code
file>
}
Wobei:
-
Eimer
ist der Amazon S3-Bucket, der die Codedatei enthält. -
Codedatei
ist der Amazon S3-Schlüssel der Codedatei.
Wenn ein Gerät das Auftragsdokument anfordert, generiert AWS IoT die vorsignierte URL und ersetzt die Platzhalter-URL durch die vorsignierte URL. Ihr Auftragsdokument wird dann an das Gerät gesendet.
IAM-Rolle, um die Erlaubnis zum Herunterladen von Dateien von S3 zu erteilen
Wenn Sie einen Job erstellen, der vorsignierte Amazon S3-URLs verwendet, müssen Sie eine IAM-Rolle angeben. Die Rolle muss die Berechtigung zum Herunterladen von Dateien aus dem Amazon S3-Bucket gewähren, in dem die Daten oder Updates gespeichert sind. Die Rolle muss auch die Berechtigung für AWS IoT zur Übernahme der Rolle gewähren.
Sie können optional ein Timeout für die vorsignierte URL angeben. Weitere Informationen finden Sie unterCreateJob.
ZuschussAWS IoTBerufliche Erlaubnis, Ihre Rolle anzunehmen
-
Gehe zumRollen-Hub der IAM-Konsole
und wähle deine Rolle. -
Auf derVertrauensbeziehungenTabulator, wählenVertrauensverhältnis bearbeitenund ersetzen Sie das Richtliniendokument durch das folgende JSON. Wählen Sie Update Trust Policy (Trust Policy aktualisieren).
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "iot.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
-
Um sich vor dem Problem des verwirrten Stellvertreters zu schützen, fügen Sie die globalen Bedingungskontextschlüssel hinzu
aws:SourceArn
undaws:SourceAccount
zur Richtlinie.Wichtig
Dein
aws:SourceArn
muss dem Format entsprechen:arn:aws:iot:
. Stellen Sie sicher, dassregion
:account-id
:*Region
entspricht deinemAWS IoTRegion undKonto-ID
entspricht Ihrer Kundenkonto-ID. Weitere Informationen finden Sie unterDienststellenübergreifende prävention für verwirrte Stellvertreter.{ "Effect": "Allow", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iot.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "aws:SourceArn": "arn:aws:iot:*:123456789012:job/*" } } } ] }
-
Wenn Ihr Job ein Auftragsdokument verwendet, das ein Amazon S3-Objekt ist, wählen SieBerechtigungenund verwende den folgenden JSON. Dadurch wird eine Richtlinie hinzugefügt, die die Berechtigung zum Herunterladen von Dateien aus Ihrem Amazon S3-Bucket gewährt:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::
your_S3_bucket
/*" } ] }