Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Variabili delle policy di oggetto
Le variabili dei criteri degli oggetti consentono di scrivere AWS IoT Core politiche che concedono o negano le autorizzazioni in base a proprietà degli oggetti come i nomi degli oggetti, i tipi di oggetti e i valori degli attributi degli oggetti. È possibile utilizzare le variabili di policy degli oggetti per applicare la stessa policy per controllare molti AWS IoT Core dispositivi. Per ulteriori informazioni sul provisioning dei dispositivi, consulta Provisioning dei dispositivi.
Se si utilizza un'associazione di oggetti non esclusiva, lo stesso certificato può essere allegato a più oggetti. Per mantenere un'associazione chiara ed evitare potenziali conflitti, è necessario abbinare l'ID cliente al nome dell'oggetto. In questo caso, si ottiene il nome dell'oggetto dall'ID client nel Connect messaggio MQTT inviato quando un oggetto si connette a. AWS IoT Core
Tenere presente quanto segue quando si utilizzano le variabili delle policy dell'oggetto nelle policy AWS IoT Core .
-
Utilizza l'AttachThingPrincipalAPI per allegare certificati o principali (identità Amazon Cognito autenticate) a un oggetto.
-
Se è attiva un'associazione non esclusiva di oggetti, quando sostituisci i nomi degli oggetti con variabili di policy degli oggetti, il valore del messaggio di connessione MQTT o della
clientIdconnessione TLS deve corrispondere esattamente al nome dell'oggetto.
Sono disponibili le variabili delle policy di oggetto seguenti:
-
iot:Connection.Thing.ThingNameQuesto si risolve nel nome dell'oggetto nel AWS IoT Core registro per il quale viene valutata la policy. AWS IoT Core utilizza il certificato che il dispositivo presenta al momento dell'autenticazione per determinare quale elemento utilizzare per verificare la connessione. Questa variabile di policy è disponibile solo quando un dispositivo si connette tramite MQTT o MQTT tramite il protocollo. WebSocket
-
iot:Connection.Thing.ThingTypeNameQuesta variabile restituisce il tipo di oggetto associato all'oggetto per cui viene valutata la policy. L'ID client della MQTT/WebSocket connessione deve coincidere con il nome dell'oggetto. Questa variabile di policy è disponibile solo quando ci si connette tramite MQTT o MQTT tramite il protocollo. WebSocket
-
iot:Connection.Thing.Attributes[attributeName]Questa variabile restituisce il valore dell'attributo specificato associato all'oggetto per cui viene valutata la policy. A un oggetto possono essere associati fino a 50 attributi. Ogni attributo è disponibile come variabile di policy:
iot:Connection.Thing.Attributes[attributeName]attributeNamedov'è il nome dell'attributo. L'ID client della MQTT/WebSocket connessione deve coincidere con il nome dell'oggetto. Questa variabile di policy è disponibile solo quando ci si connette tramite MQTT o MQTT tramite il protocollo. WebSocket -
iot:Connection.Thing.IsAttachediot:Connection.Thing.IsAttached: ["true"]impone che solo i dispositivi registrati AWS IoT e collegati al principale possano accedere alle autorizzazioni all'interno della policy. Puoi utilizzare questa variabile per impedire a un dispositivo di connettersi AWS IoT Core se presenta un certificato che non è collegato a un oggetto IoT nel AWS IoT Core registro. Questa variabile ha valoritruechefalseindicano che l'oggetto di connessione è collegato al certificato o all'identità Amazon Cognito nel registro tramite API. AttachThingPrincipal Il nome dell'oggetto è preso come ID client.
Se l'ID cliente corrisponde al nome dell'oggetto o se alleghi il certificato esclusivamente a un oggetto, l'utilizzo delle variabili di policy nella definizione della policy può semplificare la gestione delle policy. Invece di creare politiche individuali per ogni oggetto IoT, puoi definire una singola policy utilizzando le variabili di policy dell'oggetto. Questa policy può essere applicata a tutti i dispositivi in modo dinamico. Di seguito è riportato un esempio di politica per mostrare come funziona. Per ulteriori informazioni, consulta Associazione di qualsiasi AWS IoT cosa a una connessione client MQTT.
-
{ "Version":"2012-10-17", "Statement": [ { "Condition": { "StringLike": { "iot:ClientId": "*${iot:Connection.Thing.Attributes[envType]}" } }, "Effect": "Allow", "Action": "iot:Connect", "Resource": "arn:aws:iot:us-east-1:123456789012:client/*" } ] }
Questo esempio di policy consente agli oggetti di connettersi AWS IoT Core se il loro ID cliente termina con il valore del loro envType attributo. Solo gli oggetti con un modello di ID cliente corrispondente potranno connettersi.