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

Mithilfe von Dingrichtlinienvariablen können Sie AWS IoT Core Richtlinien schreiben, 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 auf die Steuerung vieler AWS IoT Core Geräte anzuwenden. 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 Objektrichtlinienvariablen in AWS IoT Core -Richtlinien verwenden.

  • 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

    Dies ergibt den Namen der Sache in der AWS IoT Core Registrierung, für die die Richtlinie ausgewertet 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 sowohl im AWS IoT Principal registriert als auch mit dem Principal verbunden sind, auf die in der Richtlinie enthaltenen Berechtigungen zugreifen können. Sie können diese Variable verwenden, um zu verhindern, dass ein Gerät eine Verbindung herstellt, AWS IoT Core wenn es ein Zertifikat vorlegt, das nicht an ein IoT-Ding in der AWS IoT Core Registrierung angehängt ist. 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.