Questa pagina spiega come controllare l'accesso ai dispositivi utilizzando Identity and Access Management (IAM). L'accesso può essere concesso a livello di progetto o di registro. Non è disponibile alcun controllo dell'accesso a livello del singolo dispositivo. L'accesso viene generalmente concesso a una persona o a un gruppo di utenti o ad account di servizio lato server. I dispositivi utilizzano l'autenticazione tramite chiave pubblica/privata. Per ulteriori dettagli, consulta la sezione sulla sicurezza del dispositivo.
Ad esempio, se assegni a un utente il ruolo di cloudiot.provisioner
a un criterio IAM del registro dispositivi, quest'ultimo potrà aggiungere o rimuovere dispositivi, ma non sarà in grado di modificare o eliminare il registro. Un ruolo può essere impostato anche su un progetto cloud e viene applicato a tutti i registry che lo appartengono.
Questa sezione si concentra sulle autorizzazioni IAM pertinenti per Cloud IoT Core e sui ruoli IAM che le concedono. Per una descrizione dettagliata di IAM e delle sue funzionalità, consulta la documentazione IAM. In particolare, consulta la sezione sulla gestione dei criteri IAM.
Ruoli
Un ruolo è un gruppo di autorizzazioni. Ad esempio, roles/cloudiot.viewer
contiene le autorizzazioni cloudiot.registries.get
, cloudiot.registries.list
, cloudiot.devices.get
e cloudiot.devices.list
.
Assegni ruoli a utenti o gruppi per consentire loro di eseguire azioni sui registry nel tuo progetto.
La tabella seguente elenca i ruoli IAM di Cloud IoT Core, incluse le autorizzazioni associate a ogni ruolo:
Ruolo | Descrizione | Autorizzazioni |
---|---|---|
roles/cloudiot.viewer |
Accesso in sola lettura a tutte le risorse Cloud IoT |
|
roles/cloudiot.deviceController |
Accesso per aggiornare la configurazione dei dispositivi, ma non per creare o eliminare dispositivi | Tutte le risposte precedenti e:
|
roles/cloudiot.provisioner |
Accesso per creare ed eliminare dispositivi dai registry, ma non per modificare i registry | Tutte le risposte precedenti e:
|
roles/cloudiot.editor |
Accesso in lettura/scrittura a tutte le risorse Cloud IoT | Tutte le risposte precedenti e:
|
roles/cloudiot.admin |
Controllo completo di tutte le autorizzazioni e le risorse di Cloud IoT | Tutte le risposte precedenti e:
|
Un ruolo aggiuntivo, roles/cloudiot.serviceAgent
, concede l'autorizzazione del publisher
per gli argomenti Cloud Pub/Sub pertinenti.
Questo ruolo viene assegnato automaticamente a un account di servizio creato quando attivi l'API Google Cloud IoT Core in un progetto. Nella maggior parte dei casi, non sarà necessario impostare
o gestire questo ruolo. In caso di errori di autorizzazione relativi ad argomenti Cloud Pub/Sub, consulta la sezione Risoluzione dei problemi.
Per ulteriori informazioni sui ruoli, consulta Informazioni sui ruoli.
Autorizzazioni
Le autorizzazioni consentono agli utenti di eseguire azioni specifiche su registry o dispositivi in Cloud IoT Core. Ad esempio, l'autorizzazione cloudiot.registries.list
consente a un utente di elencare i registry nel tuo progetto. Non devi concedere direttamente agli utenti le autorizzazioni, ma puoi assegnare loro dei ruoli che includono una o più autorizzazioni al loro interno. Puoi anche creare ruoli personalizzati.
Le seguenti tabelle elencano le autorizzazioni IAM associate a Cloud IoT Core:
Nome autorizzazione registro dispositivi | Descrizione |
---|---|
cloudiot.registries.create |
Crea un nuovo registro in un progetto. |
cloudiot.registries.delete |
Elimina un registro. |
cloudiot.registries.get |
Leggere i dettagli del Registro di sistema, esclusi gli ACL. |
cloudiot.registries.getIAMPolicy |
Lettura ACL del Registro di sistema. |
cloudiot.registries.list |
Elenca i registry in un progetto. |
cloudiot.registries.setIAMPolicy |
Aggiorna gli ACL del registro di sistema. |
cloudiot.registries.update |
Aggiorna i dettagli del Registro di sistema, esclusi gli ACL. |
cloudiot.devices.sendCommand |
Invia comandi (per registro, non per dispositivo). |
Nome autorizzazione dispositivo | Descrizione |
---|---|
cloudiot.devices.create |
Aggiungi un nuovo dispositivo a un registro. |
cloudiot.devices.delete |
Eliminare un dispositivo. |
cloudiot.devices.get |
Leggere i dettagli del dispositivo, esclusi gli ACL. |
cloudiot.devices.list |
Elenca i dispositivi in un registro. |
cloudiot.devices.update |
Aggiorna i dettagli del dispositivo, esclusi gli ACL. |
cloudiot.devices.updateConfig |
Aggiorna la configurazione del dispositivo. |
cloudiot.devices.bindGateway |
Associa un dispositivo a un gateway. |
cloudiot.devices.unbindGateway |
Annulla l'associazione di un dispositivo da un gateway. |
Per dettagli su quali autorizzazioni IAM consentono agli utenti di eseguire metodi su registry e dispositivi, consulta il riferimento REST specifico di ciascun metodo.
Gestione IAM di Cloud IoT Core
Puoi ottenere e impostare i criteri IAM utilizzando Google Cloud Console, l'API IAM o lo strumento gcloud. Per informazioni su come eseguire questa operazione a livello di progetto, consulta la sezione Concedere, modificare e revocare l'accesso. Il resto di questa sezione contiene informazioni sulla gestione IAM a livello di registro dei dispositivi.
Acquisisci una polizza
console
Per ottenere i controlli di accesso per un registro dispositivi:
- Vai alla pagina Registry in Google Cloud Console.
Seleziona la casella di controllo accanto al registro dispositivi per cui vuoi impostare le autorizzazioni. Se il riquadro informazioni non è aperto, fai clic su Mostra riquadro informazioni.
Fai clic su Autorizzazioni. Viene visualizzato un riquadro Autorizzazioni con un elenco di utenti e le loro autorizzazioni.
gcloud
Per ricevere un criterio per il Registro di sistema dei dispositivi, esegui il comando gcloud iot registries get-iam-policy
:
gcloud iot registries get-iam-policy REGISTRY_ID \ --region=REGION \ [--filter=EXPRESSION] [--limit=LIMIT] [--page-size=PAGE_SIZE] [--sort-by=[FIELD,...]]
API
Per ottenere le autorizzazioni IAM tramite l'API, utilizza il metodo DeviceRegistry getIamPolicy
:
C#
Go
Java
Node.js
PHP
Python
Ruby
Imposta un criterio
console
Per impostare i controlli di accesso a livello di registro dispositivi:
- Vai alla pagina Registry in Google Cloud Console.
Seleziona la casella di controllo accanto al registro dispositivi per cui vuoi impostare le autorizzazioni. Se il riquadro informazioni non è aperto, fai clic su Mostra riquadro informazioni.
Fai clic su Autorizzazioni. Viene visualizzato un riquadro Autorizzazioni.
Inserisci uno o più utenti, seleziona un ruolo dal menu a discesa e fai clic su Aggiungi.
gcloud
Per impostare un criterio per il Registro di sistema dei dispositivi, esegui il comando gcloud iot registries set-iam-policy
:
gcloud iot registries set-iam-policy REGISTRY_ID \ --region=REGION \ POLICY_FILE
API
Per impostare le autorizzazioni IAM tramite l'API, utilizza il metodo DeviceRegistry setIamPolicy
: