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.
Grundlegende AWS IoT Core Richtlinienvariablen
AWS IoT Core definiert die folgenden grundlegenden Richtlinienvariablen:
-
aws:SourceIp
: Die IP-Adresse des Clients, der mit dem AWS IoT Core Message Broker verbunden ist. -
iot:ClientId
: Die Client-ID für die Verbindung zum AWS IoT Core Message Broker. -
iot:DomainName
: Der Domainname des Clients, mit dem eine Verbindung hergestellt wurde AWS IoT Core.
Beispiele
Beispiele für ClientId
und SourceIp
Richtlinienvariablen
Die folgende AWS IoT Core Richtlinie zeigt eine Richtlinie, die Richtlinienvariablen verwendet. aws:SourceIp
kann im Condition-Element Ihrer Richtlinie verwendet werden, um es Prinzipalen zu ermöglichen, API Anfragen nur innerhalb eines bestimmten Adressbereichs zu stellen. Beispiele finden Sie unter Autorisieren von Benutzern und Cloud-Services zur Nutzung von AWS IoT -Aufträgen.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/clientid1" ] }, { "Effect": "Allow", "Action": [ "iot:Publish" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/my/topic/${iot:ClientId}" ], "Condition": { "IpAddress": { "aws:SourceIp": "123.45.167.89" } } } ] }
In diesen Beispielen ${iot:ClientId}
wird bei der Auswertung der Richtlinie durch die ID des Clients ersetzt, der mit dem AWS IoT Core Message Broker verbunden ist. Wenn Sie Richtlinienvariablen wie beispielsweise ${iot:ClientId}
verwenden, können Sie versehentlich den Zugriff auf Themen ermöglichen. Wenn Sie beispielsweise eine Richtlinie nutzen, in der mit ${iot:ClientId}
ein bestimmter Topic-Filter angegeben wird:
{ "Effect": "Allow", "Action": [ "iot:Subscribe" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topicfilter/my/${iot:ClientId}/topic" ] }
... kann ein Client mit der Client-ID +
eine Verbindung zum &IoT; Message Broker herstellen. Damit könnte der Benutzer jedes Thema abonnieren, das dem Themenfilter my/+/topic
entspricht. Um sich vor solchen Sicherheitslücken zu schützen, verwenden Sie die iot:Connect
Richtlinienaktion, um zu kontrollieren, welcher Client eine Verbindung herstellen IDs kann. Mit dieser Richtlinie zum Beispiel dürfen nur die Clients mit der Client-ID clientid1
eine Verbindung herstellen:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/clientid1" ] } ] }
Anmerkung
Die Verwendung der Richtlinienvariable ${iot:ClientId}
mit Connect
wird nicht empfohlen. Der ClientId
-Wert wird nicht überprüft, sodass eine Anfügung mit einer anderen Client-ID die Validierung zwar bestehen, aber einen Verbindungsabbruch verursachen kann. Da jede ClientId
erlaubt ist, können mit einer zufälligen Client-ID die Richtlinien für Objektgruppen umgangen werden.
Beispiele für iot:DomainName
Richtlinienvariablen
Sie können die iot:DomainName
Richtlinienvariable hinzufügen, um einzuschränken, welche Domänen verwendet werden dürfen. Durch das Hinzufügen der iot:DomainName
Richtlinienvariablen können Geräte nur eine Verbindung zu bestimmten konfigurierten Endpunkten herstellen.
Die folgende Richtlinie ermöglicht es Geräten, eine Verbindung mit der angegebenen Domäne herzustellen.
{ "Version": "2012-10-17", "Statement": { "Sid": "AllowConnectionsToSpecifiedDomain", "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": "*", "Condition": { "StringEquals": { "iot:DomainName": "d1234567890abcdefghij-ats.iot.us-east-1.amazonaws.com" } } } }
Die folgende Richtlinie verweigert Geräten die Verbindung mit der angegebenen Domäne.
{ "Version": "2012-10-17", "Statement": { "Sid": "DenyConnectionsToSpecifiedDomain", "Effect": "Deny", "Action": [ "iot:Connect" ], "Resource": "*", "Condition": { "StringEquals": { "iot:DomainName": "d1234567890abcdefghij-ats.iot.us-east-1.amazonaws.com" } } } }
Weitere Informationen zum Bedingungsoperator für Richtlinien finden Sie unter IAMJSONRichtlinienelemente: Bedingungsoperatoren. Weitere Informationen zu Domänenkonfigurationen finden Sie unter Was ist eine Domänenkonfiguration? .