Tagging delle risorse AWS IoT Wireless - Wireless AWS IoT

Tagging delle risorse AWS IoT Wireless

Per aiutarti a gestire e organizzare dispositivi, gateway, destinazioni e profili, è possibile assegnare i metadati a ciascuna di queste risorse sotto forma di tag. Questa sezione descrive i tag e mostra come crearli. AWS IoT Wireless non ha gruppi di fatturazione e utilizza gli stessi gruppi di fatturazione di AWS IoT Core. Per ulteriori informazioni, consultare Gruppi di fatturazione nella Documentazione AWS IoT Core.

Nozioni di base sui tag

In presenza di diverse risorse AWS IoT Wireless dello stesso tipo, è possibile usare i tag per categorizzare le risorse in modi diversi (ad esempio, per finalità, proprietario o ambiente). Ciò consente di identificare velocemente una risorsa in base ai tag a questa assegnati.

Ogni tag è formato da una chiave e da un valore opzionale, entrambi personalizzabili. Ad esempio, è possibile definire un set di tag per un gruppo di dispositivi LoRaWAN per i quali viene aggiornato il firmware del dispositivo. Per gestire più facilmente le risorse, è consigliabile creare un set di chiavi di tag coerente in grado di soddisfare i requisiti di ciascun tipo di risorsa.

Puoi cercare e filtrare le risorse in base ai tag che aggiungi o applichi. Puoi anche utilizzare i tag per controllare l'accesso alle risorse utilizzando le policy IAM e i tag di gruppo di fatturazione per categorizzare e monitorare i costi.

Creazione e gestione di agenti

Puoi creare e gestire i tag utilizzando il Tag Editor nella AWS Management Console, nell'AWS IoT Wireless o nella AWS CLI

Utilizzo della console

Per semplicità di utilizzo, Tag Editor nella AWS Management Console fornisce una soluzione centrale e unificata per creare e gestire i tag. Per ulteriori informazioni, consultare Utilizzo dell'editor di tag in Utilizzo della AWS Management Console.

Utilizzo dell'API o dell'interfaccia a riga di comando

Puoi anche utilizzare l'API o la CLI e associare tag a dispositivi wireless, gateway, profili e destinazioni quando li crei utilizzando il campo Tags nei seguenti comandi:

Aggiornamento dei tag o elencazione dei tag per le risorse

Puoi aggiungere, modificare o eliminare i tag per le risorse esistenti che supportano il tagging utilizzando i comandi seguenti:

Puoi modificare chiavi e valori di tag e rimuovere tag da una risorsa in qualsiasi momento. Puoi impostare il valore di un tag su una stringa vuota, ma non su null. Se aggiungi un tag con la stessa chiave di un tag esistente a una risorsa specifica, il nuovo valore sovrascrive quello precedente. Se elimini una risorsa, verranno eliminati anche tutti i tag associati alla risorsa.

Restrizioni e limitazioni di tag

Ai tag si applicano le seguenti limitazioni di base:

  • Numero massimo di tag per risorsa: 50.

  • Lunghezza massima della chiave: 127 caratteri Unicode in formato UTF-8.

  • Lunghezza massima del valore: 255 caratteri Unicode in formato UTF-8.

  • I valori e le chiavi dei tag rispettano la distinzione tra maiuscole e minuscole.

  • Non utilizzare il prefisso aws: nei nomi dei tag o nei valori. Riservato per l'utilizzo da parte di AWS. Non è possibile modificare né eliminare i nomi o i valori di tag con tale prefisso. I tag con questo prefisso non vengono conteggiati per il limite del numero di tag per risorsa.

  • Se lo schema di tagging viene utilizzato in più servizi e risorse, è necessario tenere presente che in altri servizi possono essere presenti limiti sui caratteri consentiti. I caratteri consentiti sono lettere, spazi e numeri rappresentabili in formato UTF-8, più i caratteri speciali + - = . _ : / @.

Utilizzo dei tag con policy IAM

Per specificare le risorse che un utente può creare, modificare o utilizzare, è possibile applicare autorizzazioni a livello di risorsa basate su tag nelle policy IAM utilizzate per le operazioni API AWS IoT Wireless. Puoi utilizzare l'elemento Condition (denominato anche blocco Condition) con i seguenti valori e chiavi di contesto di condizione in una policy IAM per controllare l'accesso dell'utente (autorizzazioni) in base ai tag della risorsa.

  • Utilizza aws:ResourceTag/tag-key: tag-value per concedere o negare agli utenti operazioni su risorse con specifici tag.

  • Utilizza aws:RequestTag/tag-key: tag-value per richiedere che un tag specifico venga utilizzato (o non utilizzato) durante la creazione di una richiesta API per creare o modificare una risorsa che abilita i tag.

  • Utilizza aws:TagKeys: [tag-key, ...] per richiedere che un set di tag specifico venga utilizzato (o non utilizzato) durante la creazione di una richiesta API per creare o modificare una risorsa che abilita i tag.

Nota

Le chiavi di contesto della condizione e i valori all'interno di una policy IAM si applicano solo alle operazioni AWS IoT in cui un identificatore per una risorsa in grado di essere taggata è un parametro obbligatorio. Ad esempio, l'uso di DescribeEndpoint non viene consentito o negato sulla base di valori e chiavi di contesto di condizione perché in questa richiesta non si fa riferimento a una risorsa compatibile con l'assegnazione di tag.

Per ulteriori informazioni sull'utilizzo dei tag, consulta Controllo degli accessi tramite tag nella Guida per l'utente di AWS Identity and Access Management. La sezione relativa al riferimento alle policy JSON IAM della guida ha una sintassi dettagliata, descrizioni ed esempi di elementi, variabili e logica di valutazione delle policy JSON in IAM.

La policy di esempio seguente applica due restrizioni basate su tag. Un utente IAM limitato da questa policy:

  • Non può assegnare a una risorsa il tag "env=prod" (nell'esempio, consulta la riga "aws:RequestTag/env" : "prod").

  • Non può modificare o accedere a una risorsa con un tag esistente "env=prod" (nell'esempio, consulta la riga "aws:ResourceTag/env" : "prod").

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "iot:CreateMulticastGroup", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestTag/env": "prod" } } }, { "Effect": "Deny", "Action": [ "iot:CreateMulticastGroup", "iot:UpdateMulticastGroup", "iot:GetMulticastGroup", "iot:ListMulticastGroups" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/env": "prod" } } }, { "Effect": "Allow", "Action": [ "iot:CreateMulticastGroup", "iot:UpdateMulticastGroup", "iot:GetMulticastGroup", "iot:ListMulticastGroups" ], "Resource": "*" } ] }

È anche possibile specificare più valori di tag per una determinata chiave tag racchiudendoli in un elenco, come segue:

"StringEquals" : { "aws:ResourceTag/env" : ["dev", "test"] }
Nota

Se consenti o neghi a un utente l'accesso a risorse in base ai tag, devi considerare esplicitamente di negare agli utenti la possibilità di aggiungere o rimuovere tali tag dalle stesse risorse. In caso contrario, un utente può eludere le restrizioni e ottenere l'accesso a una risorsa modificandone i tag.