Objektrichtlinienvariablen - AWS IoT Core

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.

Objektrichtlinienvariablen

Dinge, mit denen Sie mit Richtlinienvariablen schreiben können AWS IoT Core Richtlinien, die Berechtigungen auf der Grundlage von Dingeigenschaften wie Dingnamen, Dingtypen und Dingattributwerten gewähren oder verweigern. Sie können Ding-Richtlinienvariablen verwenden, um dieselbe Richtlinie anzuwenden, um viele zu kontrollieren AWS IoT Core Geräte. Weitere Informationen zur Gerätebereitstellung finden Sie unter Gerätebereitstellung. Der Name des Dings wird aus der Client-ID in der MQTT Connect Nachricht abgerufen, die gesendet wird, wenn ein Ding eine Verbindung herstellt AWS IoT Core.

Beachten Sie Folgendes, wenn Sie Ding-Richtlinienvariablen in verwenden AWS IoT Core Richtlinien.

  • Verwenden Sie die AttachThingPrincipalAPI, um Zertifikate oder Principals (authentifizierte Amazon Cognito Cognito-Identitäten) an eine Sache anzuhängen.

  • Wenn Sie Dingnamen durch Ding-Richtlinienvariablen ersetzen, muss der Wert von clientId in der Verbindungsnachricht oder der MQTT TLS Verbindung exakt mit dem Ding-Namen übereinstimmen.

Folgende Thing-Richtlinienvariablen stehen zur Verfügung:

  • iot:Connection.Thing.ThingName

    Das ergibt den Namen der Sache in der AWS IoT Core Registrierung, für die die Richtlinie evaluiert wird. AWS IoT Core verwendet das Zertifikat, das das Gerät bei der Authentifizierung vorlegt, um zu ermitteln, welches Objekt zur Überprüfung der Verbindung verwendet werden soll. Diese Richtlinienvariable ist nur verfügbar, wenn ein Gerät über MQTT oder MQTT über das WebSocket Protokoll eine Verbindung herstellt.

  • iot:Connection.Thing.ThingTypeName

    Dies wird in den Objekttyp aufgelöst, auf das die Richtlinie angewendet wurde. Die Client-ID der MQTT WebSocket /-Verbindung muss mit dem Namen des Dings identisch sein. Diese Richtlinienvariable ist nur verfügbar, wenn eine Verbindung über MQTT oder MQTT über das WebSocket Protokoll hergestellt wird.

  • iot:Connection.Thing.Attributes[attributeName]

    Dies wird in den Wert des angegebenen Attributs aufgelöst, das mit dem Thing verknüpft ist, auf das die Richtlinie angewendet wurde. Ein Thing kann bis zu 50 Attribute aufweisen. Jedes Attribut ist als Richtlinienvariable verfügbar: iot:Connection.Thing.Attributes[attributeName] wo attributeName ist der Name des Attributs. Die Client-ID der MQTT WebSocket /-Verbindung muss mit dem Namen des Dings identisch sein. Diese Richtlinienvariable ist nur verfügbar, wenn eine Verbindung über MQTT oder MQTT über das WebSocket Protokoll hergestellt wird.

  • iot:Connection.Thing.IsAttached

    iot:Connection.Thing.IsAttached: ["true"]erzwingt, dass nur die Geräte, die beide registriert sind AWS IoT und an den Principal angehängt sind, können auf die in der Richtlinie enthaltenen Berechtigungen zugreifen. Sie können diese Variable verwenden, um zu verhindern, dass ein Gerät eine Verbindung zu herstellt AWS IoT Core wenn es ein Zertifikat vorlegt, das nicht an ein IoT-Ding in der AWS IoT Core Registry. Diese Variable hat Werte true oder false gibt an, dass das verbindende Ding mit dem Zertifikat oder der Amazon Cognito Cognito-Identität in der Registrierung verknüpft ist. AttachThingPrincipalAPI Der Objektname wird als Client-ID verwendet.