Questa pagina descrive come concedere, modificare e revocare l'accesso a progetti, cartelle e organizzazioni. Per scoprire come gestire l'accesso ad altre risorse, consulta le seguenti guide:
In Identity and Access Management (IAM), l'accesso è concesso mediante i criteri di autorizzazione, noti anche come criteri IAM. Un criterio di autorizzazione è collegato a una risorsa Google Cloud. Ogni criterio di autorizzazione contiene una raccolta di associazioni di ruoli che associano una o più entità, come utenti o account di servizio, a un ruolo IAM. Queste associazioni di ruoli concedono i ruoli specificati alle entità, sia nella risorsa a cui è associato il criterio di autorizzazione sia su tutti i discendenti di quella risorsa. Per ulteriori informazioni sui criteri di autorizzazione, consulta Informazioni sui criteri di autorizzazione.
Puoi gestire l'accesso a progetti, cartelle e organizzazioni con la console Google Cloud, Google Cloud CLI, l'API REST o le librerie client di Resource Manager.
Prima di iniziare
Enable the Resource Manager API.
Configurare l'autenticazione.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
C#
Per utilizzare gli .NET esempi in questa pagina in una località dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Per ulteriori informazioni, vedi Configurare l'autenticazione per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Google Cloud.
Java
Per utilizzare gli Java esempi in questa pagina in una località dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Per ulteriori informazioni, vedi Configurare l'autenticazione per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Google Cloud.
Python
Per utilizzare gli Python esempi in questa pagina in una località dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Per ulteriori informazioni, vedi Configurare l'autenticazione per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Google Cloud.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Ruoli obbligatori
Quando crei un progetto, una cartella o un'organizzazione, ti viene assegnato automaticamente un ruolo che ti consente di gestire l'accesso per quella risorsa. Per ulteriori informazioni, consulta le norme predefinite.
Se non hai creato il progetto, la cartella o l'organizzazione, assicurati di disporre dei ruoli necessari per gestire l'accesso a quella risorsa.
Per ottenere le autorizzazioni necessarie per gestire l'accesso a un progetto, una cartella o un'organizzazione, chiedi all'amministratore di concederti i seguenti ruoli IAM sulla risorsa per cui vuoi gestire l'accesso (progetto, cartella o organizzazione):
-
Per gestire l'accesso a un progetto:
Amministratore IAM progetto (
roles/resourcemanager.projectIamAdmin
) -
Per gestire l'accesso a una cartella:
Amministratore cartelle (
roles/resourcemanager.folderAdmin
) -
Per gestire l'accesso a progetti, cartelle e organizzazioni:
Amministratore organizzazione (
roles/resourcemanager.organizationAdmin
) -
Per gestire l'accesso a quasi tutte le risorse Google Cloud:
Amministratore sicurezza (
roles/iam.securityAdmin
)
Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire l'accesso a un progetto, una cartella o un'organizzazione. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per gestire l'accesso a un progetto, una cartella o un'organizzazione sono necessarie le seguenti autorizzazioni:
-
Per gestire l'accesso ai progetti:
-
resourcemanager.projects.getIamPolicy
-
resourcemanager.projects.setIamPolicy
-
-
Per gestire l'accesso alle cartelle:
-
resourcemanager.folders.getIamPolicy
-
resourcemanager.folders.setIamPolicy
-
-
Per gestire l'accesso alle organizzazioni:
-
resourcemanager.organizations.getIamPolicy
-
resourcemanager.organizations.setIamPolicy
-
Potresti anche essere in grado di ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.
Visualizza accesso attuale
Puoi visualizzare chi ha accesso al progetto, alla cartella o all'organizzazione utilizzando la console Google Cloud, gcloud CLI, l'API REST o le librerie client di Resource Manager.
Console
Nella console Google Cloud, vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
Nella console Google Cloud sono elencate tutte le entità a cui sono stati concessi i ruoli per il progetto, la cartella o l'organizzazione. Questo elenco include le entità che hanno ereditato i ruoli nella risorsa dalle risorse padre. Per maggiori informazioni sull'ereditarietà dei criteri, vedi Eredità dei criteri e gerarchia delle risorse.
(Facoltativo) Per visualizzare le concessioni di ruoli per gli account di servizio gestiti da Google, seleziona la casella di controllo Includi concessioni di ruoli fornite da Google.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Per vedere chi ha accesso al progetto, alla cartella o all'organizzazione, ottieni il criterio di autorizzazione per la risorsa. Per informazioni su come interpretare i criteri di autorizzazione, consulta Comprendere i criteri di autorizzazione.
Per ottenere il criterio di autorizzazione per la risorsa, esegui il comando
get-iam-policy
per la risorsa:gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Fornisci i seguenti valori:
-
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi visualizzare l'accesso. Utilizza uno di questi valori:projects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione di Google Cloud. Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
FORMAT
: il formato desiderato per il criterio. Usajson
oyaml
. -
PATH
: il percorso di un nuovo file di output per il criterio.
Ad esempio, il comando seguente recupera il criterio per il progetto
my-project
e lo salva nella home directory in formato JSON:gcloud projects get-iam-policy my-project --format=json > ~/policy.json
-
C#
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Per vedere chi ha accesso al progetto, alla cartella o all'organizzazione, ottieni il criterio di autorizzazione per la risorsa. Per informazioni su come interpretare i criteri di autorizzazione, consulta Comprendere i criteri di autorizzazione.
L'esempio seguente mostra come ottenere il criterio di autorizzazione per un progetto. Per scoprire come ottenere il criterio di autorizzazione per una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
Java
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Per vedere chi ha accesso al progetto, alla cartella o all'organizzazione, ottieni il criterio di autorizzazione per la risorsa. Per informazioni su come interpretare i criteri di autorizzazione, consulta Comprendere i criteri di autorizzazione.
L'esempio seguente mostra come ottenere il criterio di autorizzazione per un progetto. Per scoprire come ottenere il criterio di autorizzazione per una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
Python
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Per vedere chi ha accesso al progetto, alla cartella o all'organizzazione, ottieni il criterio di autorizzazione per la risorsa. Per informazioni su come interpretare i criteri di autorizzazione, consulta Comprendere i criteri di autorizzazione.
L'esempio seguente mostra come ottenere il criterio di autorizzazione per un progetto. Per scoprire come ottenere il criterio di autorizzazione per una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
REST
Per vedere chi ha accesso al progetto, alla cartella o all'organizzazione, ottieni il criterio di autorizzazione per la risorsa. Per informazioni su come interpretare i criteri di autorizzazione, consulta Comprendere i criteri di autorizzazione.
Il metodo
getIamPolicy
dell'API Resource Manager ottiene il criterio di autorizzazione di un progetto, di una cartella o di un'organizzazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
API_VERSION
: la versione dell'API da utilizzare. Per i progetti e le organizzazioni, utilizzav1
. Per le cartelle, utilizzav2
.RESOURCE_TYPE
: il tipo di risorsa di cui vuoi gestire il criterio. Utilizza il valoreprojects
,folders
oorganizations
.RESOURCE_ID
: l'ID progetto, organizzazione o cartella Google Cloud. Gli ID progetto sono stringhe alfanumeriche, comemy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
.POLICY_VERSION
: la versione del criterio da restituire. Le richieste devono specificare la versione del criterio più recente, ovvero la versione 3. Per maggiori dettagli, consulta Specifica della versione di un criterio durante il recupero di un criterio.
Metodo HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:getIamPolicy
Corpo JSON della richiesta:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Per inviare la richiesta, espandi una di queste opzioni:
La risposta contiene il criterio di autorizzazione della risorsa. Ad esempio:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/owner", "members": [ "user:[email protected]" ] } ] }
Concedere o revocare un singolo ruolo
Puoi utilizzare la console Google Cloud e gcloud CLI per concedere o revocare rapidamente un singolo ruolo per una singola entità, senza modificare direttamente il criterio di autorizzazione della risorsa. I tipi comuni di entità includono Account Google, account di servizio, gruppi Google e domini. Per un elenco di tutti i tipi di entità, consulta Concetti relativi all'identità.
Se hai bisogno di aiuto per identificare il ruolo predefinito più appropriato, consulta Scegliere i ruoli predefiniti.
Concedi un singolo ruolo
Per concedere un singolo ruolo a un'entità:
Console
Nella console Google Cloud, vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
Seleziona un'entità a cui concedere un ruolo:
Per concedere un ruolo a un'entità che ha già altri ruoli nella risorsa, trova una riga contenente l'entità, fai clic su
Modifica entità in quella riga e poi su Aggiungi un altro ruolo.Per concedere un ruolo a un account di servizio gestito da Google, seleziona la casella di controllo Includi concessioni di ruoli fornite da Google per visualizzare il relativo indirizzo email.
Per concedere un ruolo a un'entità che non ha ruoli esistenti nella risorsa, fai clic su
Concedi accesso, quindi inserisci l'indirizzo email o un altro identificatore dell'entità.
Seleziona un ruolo da concedere dall'elenco a discesa. Per le best practice di sicurezza, scegli un ruolo che includa solo le autorizzazioni necessarie all'entità.
(Facoltativo) Aggiungi una condizione al ruolo.
Fai clic su Salva. All'entità viene concesso il ruolo nella risorsa.
Per concedere un ruolo a un'entità per più progetti, cartelle o organizzazioni:
Nella console Google Cloud, vai alla pagina Gestisci risorse.
Seleziona tutte le risorse per le quali vuoi concedere le autorizzazioni.
Se il riquadro delle informazioni non è visibile, fai clic su Mostra riquadro informazioni. Quindi, fai clic su Autorizzazioni.
Seleziona un'entità a cui concedere un ruolo:
Per concedere un ruolo a un'entità che ha già altri ruoli, trova una riga contenente l'entità, fai clic su
Modifica entità in quella riga e poi su Aggiungi un altro ruolo.Per concedere un ruolo a un'entità che non dispone già di altri ruoli, fai clic su
Aggiungi entità, quindi inserisci l'indirizzo email o un altro identificatore dell'entità.
Seleziona un ruolo da concedere dall'elenco a discesa.
(Facoltativo) Aggiungi una condizione al ruolo.
Fai clic su Salva. All'entità viene concesso il ruolo selezionato per ciascuna delle risorse selezionate.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Il comando
add-iam-policy-binding
consente di concedere rapidamente un ruolo a un'entità.Prima di utilizzare uno qualsiasi dei dati di comando riportati di seguito, effettua le seguenti sostituzioni:
-
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi gestire l'accesso. Utilizzaprojects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione di Google Cloud. Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
PRINCIPAL
: un identificatore dell'entità o del membro, che in genere ha il seguente formato:PRINCIPAL_TYPE:ID
. Ad esempio,user:[email protected]
. Per un elenco completo dei valori chePRINCIPAL
può avere, consulta il riferimento sull'associazione dei criteri.Per il tipo di entità
user
, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o un dominio Cloud Identity. Per informazioni su come configurare un dominio Cloud Identity, consulta la panoramica di Cloud Identity. -
ROLE_NAME
: il nome del ruolo che vuoi revocare. Utilizza uno dei seguenti formati:- Ruoli predefiniti:
roles/SERVICE.IDENTIFIER
- Ruoli personalizzati a livello di progetto:
projects/PROJECT_ID/roles/IDENTIFIER
- Ruoli personalizzati a livello di organizzazione:
organizations/ORG_ID/roles/IDENTIFIER
Per un elenco dei ruoli predefiniti, consulta Informazioni sui ruoli.
- Ruoli predefiniti:
-
CONDITION
: la condizione da aggiungere all'associazione dei ruoli. Se non vuoi aggiungere una condizione, utilizza il valoreNone
. Per maggiori informazioni sulle condizioni, consulta la relativa panoramica.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID \ --member=PRINCIPAL --role=ROLE_NAME \ --condition=CONDITION
Windows (PowerShell)
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ` --member=PRINCIPAL --role=ROLE_NAME ` --condition=CONDITION
Windows (cmd.exe)
gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ^ --member=PRINCIPAL --role=ROLE_NAME ^ --condition=CONDITION
La risposta contiene il criterio IAM aggiornato.
-
Revocare un singolo ruolo
Per revocare un singolo ruolo da un'entità:
Console
Nella console Google Cloud, vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
Trova la riga contenente l'entità di cui vuoi revocare l'accesso. Fai clic su
Modifica entità nella riga corrispondente.Fai clic sul pulsante Elimina
per il ruolo che vuoi revocare, quindi fai clic su Salva.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Per revocare rapidamente un ruolo a un utente, esegui il comando
remove-iam-policy-binding
:gcloud RESOURCE_TYPE remove-iam-policy-binding RESOURCE_ID \ --member=PRINCIPAL --role=ROLE_NAME
Fornisci i seguenti valori:
-
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi gestire l'accesso. Utilizzaprojects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione di Google Cloud. Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
PRINCIPAL
: un identificatore dell'entità o del membro, che in genere ha il seguente formato:PRINCIPAL_TYPE:ID
. Ad esempio,user:[email protected]
. Per un elenco completo dei valori chePRINCIPAL
può avere, consulta il riferimento sull'associazione dei criteri.Per il tipo di entità
user
, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o un dominio Cloud Identity. Per informazioni su come configurare un dominio Cloud Identity, consulta la panoramica di Cloud Identity. -
ROLE_NAME
: il nome del ruolo che vuoi revocare. Utilizza uno dei seguenti formati:- Ruoli predefiniti:
roles/SERVICE.IDENTIFIER
- Ruoli personalizzati a livello di progetto:
projects/PROJECT_ID/roles/IDENTIFIER
- Ruoli personalizzati a livello di organizzazione:
organizations/ORG_ID/roles/IDENTIFIER
Per un elenco dei ruoli predefiniti, consulta Informazioni sui ruoli.
- Ruoli predefiniti:
Ad esempio, per revocare il ruolo Autore progetto all'utente
[email protected]
per il progettomy-project
:gcloud projects remove-iam-policy-binding my-project \ --member=user:[email protected] --role=roles/resourcemanager.projectCreator
-
Per assicurarti di non revocare i ruoli necessari, puoi abilitare i suggerimenti per i rischi di cambiamento. I suggerimenti di modifica sui rischi generano avvisi quando tenti di revocare i ruoli a livello di progetto che Google Cloud ha identificato come importanti.
Concedere o revocare più ruoli utilizzando la console Google Cloud
Puoi utilizzare la console Google Cloud per concedere e revocare più ruoli per una singola entità:
Nella console Google Cloud, vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
Seleziona l'entità di cui vuoi modificare i ruoli:
Per modificare i ruoli di un'entità che ha già ruoli nella risorsa, trova una riga contenente l'entità, fai clic su
Modifica entità in quella riga e poi su Aggiungi un altro ruolo.Per modificare i ruoli per un account di servizio gestito da Google, seleziona la casella di controllo Includi concessioni di ruoli fornite da Google per visualizzare il relativo indirizzo email.
Per concedere i ruoli a un'entità che non ha ruoli nella risorsa, fai clic su
Concedi accesso, quindi inserisci l'indirizzo email o un altro identificatore dell'entità.
Modifica i ruoli dell'entità:
- Per concedere un ruolo a un'entità che non dispone di ruoli esistenti nella risorsa, fai clic su Seleziona un ruolo, quindi seleziona un ruolo da concedere dall'elenco a discesa.
- Per concedere un ruolo aggiuntivo all'entità, fai clic su Aggiungi un altro ruolo e seleziona un ruolo da concedere dall'elenco a discesa.
- Per sostituire uno dei ruoli dell'entità con un ruolo diverso, fai clic sul ruolo esistente, poi scegli un altro ruolo da concedere dall'elenco a discesa.
- Per revocare uno dei ruoli dell'entità, fai clic sul pulsante Elimina per ogni ruolo che vuoi revocare.
Puoi anche aggiungere una condizione a un ruolo, modificare la condizione di un ruolo o rimuovere la condizione di un ruolo.
Fai clic su Salva.
Concedi o revoca più ruoli in modo programmatico
Per apportare modifiche all'accesso su larga scala che prevedono la concessione e la revoca di più ruoli per più entità, utilizza il pattern read-modify-write per aggiornare il criterio di autorizzazione della risorsa:
- Per leggere l'attuale criterio di autorizzazione, chiama
getIamPolicy()
. - Modifica il criterio di autorizzazione utilizzando un editor di testo o in modo programmatico per aggiungere o rimuovere entità o associazioni di ruoli.
- Scrivi il criterio di autorizzazione aggiornato chiamando
setIamPolicy()
.
Puoi utilizzare gcloud CLI, l'API REST o le librerie client di Resource Manager per aggiornare il criterio di autorizzazione.
Recupera il criterio di autorizzazione attuale
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Per ottenere il criterio di autorizzazione per la risorsa, esegui il comando
get-iam-policy
per la risorsa:gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Fornisci i seguenti valori:
-
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi ottenere il criterio di autorizzazione. Utilizza uno dei seguenti valori:projects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione di Google Cloud. Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
FORMAT
: il formato desiderato per il criterio di autorizzazione. Usajson
oyaml
. -
PATH
: il percorso di un nuovo file di output per il criterio di autorizzazione.
Ad esempio, il comando seguente recupera il criterio di autorizzazione per il progetto
my-project
e lo salva nella home directory in formato JSON:gcloud projects get-iam-policy my-project --format json > ~/policy.json
-
C#
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere il criterio di autorizzazione per un progetto. Per scoprire come ottenere il criterio di autorizzazione di una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
Java
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere il criterio di autorizzazione per un progetto. Per scoprire come ottenere il criterio di autorizzazione di una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
Python
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere il criterio di autorizzazione per un progetto. Per scoprire come ottenere il criterio di autorizzazione di una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
REST
Il metodo
getIamPolicy
dell'API Resource Manager ottiene il criterio di autorizzazione di un progetto, di una cartella o di un'organizzazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
API_VERSION
: la versione dell'API da utilizzare. Per i progetti e le organizzazioni, utilizzav1
. Per le cartelle, utilizzav2
.RESOURCE_TYPE
: il tipo di risorsa di cui vuoi gestire il criterio. Utilizza il valoreprojects
,folders
oorganizations
.RESOURCE_ID
: l'ID progetto, organizzazione o cartella Google Cloud. Gli ID progetto sono stringhe alfanumeriche, comemy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
.POLICY_VERSION
: la versione del criterio da restituire. Le richieste devono specificare la versione del criterio più recente, ovvero la versione 3. Per maggiori dettagli, consulta Specifica della versione di un criterio durante il recupero di un criterio.
Metodo HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:getIamPolicy
Corpo JSON della richiesta:
{ "options": { "requestedPolicyVersion": POLICY_VERSION } }
Per inviare la richiesta, espandi una di queste opzioni:
La risposta contiene il criterio di autorizzazione della risorsa. Ad esempio:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/owner", "members": [ "user:[email protected]" ] } ] }
Salva la risposta in un file del tipo appropriato (
json
oyaml
).Modifica il criterio di autorizzazione
Modifica la copia locale del criterio di autorizzazione della risorsa in modo programmatico o utilizzando un editor di testo in modo che rifletta i ruoli che vuoi concedere o revocare.
Per assicurarti di non sovrascrivere altre modifiche, non modificare o rimuovere il campo
etag
del criterio di autorizzazione. Il campoetag
identifica lo stato attuale del criterio di autorizzazione. Quando imposti il criterio di autorizzazione aggiornato, IAM confronta il valoreetag
nella richiesta con il valoreetag
esistente e scrive il criterio di autorizzazione solo se i valori corrispondono.Per modificare i ruoli concessi da un criterio di autorizzazione, devi modificare le associazioni di ruoli nel criterio di autorizzazione. Le associazioni di ruoli hanno il seguente formato:
{ "role": "ROLE_NAME", "members": [ "PRINCIPAL_1", "PRINCIPAL_2", ... "PRINCIPAL_N" ], "conditions:" { CONDITIONS } }
I segnaposto hanno i seguenti valori:
ROLE_NAME
: il nome del ruolo che vuoi concedere. Utilizza uno dei seguenti formati:- Ruoli predefiniti:
roles/SERVICE.IDENTIFIER
- Ruoli personalizzati a livello di progetto:
projects/PROJECT_ID/roles/IDENTIFIER
- Ruoli personalizzati a livello di organizzazione:
organizations/ORG_ID/roles/IDENTIFIER
Per un elenco dei ruoli predefiniti, consulta Informazioni sui ruoli.
- Ruoli predefiniti:
PRINCIPAL_1
,PRINCIPAL_2
,...PRINCIPAL_N
: identificatori delle entità a cui vuoi concedere il ruolo.Gli identificatori principali di solito hanno il seguente formato:
PRINCIPAL-TYPE:ID
. Ad esempio,user:[email protected]
. Per un elenco completo dei valori chePRINCIPAL
può avere, consulta il riferimento sull'associazione dei criteri.Per il tipo di entità
user
, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o un dominio Cloud Identity. Per informazioni su come configurare un dominio Cloud Identity, consulta la panoramica di Cloud Identity.CONDITIONS
: facoltativo. Qualsiasi conditions che specifichi quando verrà concesso l'accesso.
Concedi un ruolo
Per concedere i ruoli alle entità, modifica le associazioni di ruoli nel criterio di autorizzazione. Per sapere quali ruoli puoi concedere, consulta Informazioni sui ruoli o visualizza i ruoli assegnabili per la risorsa. Se hai bisogno di aiuto per identificare i ruoli predefiniti più appropriati, consulta Scegliere i ruoli predefiniti.
Facoltativamente, puoi utilizzare le conditions per concedere i ruoli solo quando sono soddisfatti determinati requisiti.
Per concedere un ruolo già incluso nel criterio di autorizzazione, aggiungi l'entità a un'associazione di ruoli esistente:
gcloud
Modifica il criterio di autorizzazione restituito aggiungendo l'entità a un'associazione di ruoli esistente. Tieni presente che questa modifica avrà effetto solo dopo aver impostato il criterio di autorizzazione aggiornato.
Ad esempio, immagina che il criterio di autorizzazione contenga la seguente associazione di ruoli, che concede il ruolo Revisore della sicurezza (
roles/iam.securityReviewer
) a[email protected]
:{ "role": "roles/iam.securityReviewer", "members": [ "user:[email protected]" ] }
Per concedere lo stesso ruolo a
[email protected]
, aggiungi[email protected]
all'associazione di ruoli esistente:{ "role": "roles/iam.securityReviewer", "members": [ "user:[email protected]", "user:[email protected]" ] }
C#
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Go
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Java
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Python
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
REST
Modifica il criterio di autorizzazione restituito aggiungendo l'entità a un'associazione di ruoli esistente. Tieni presente che questa modifica avrà effetto solo dopo aver impostato il criterio di autorizzazione aggiornato.
Ad esempio, immagina che il criterio di autorizzazione contenga la seguente associazione di ruoli, che concede il ruolo Revisore della sicurezza (
roles/iam.securityReviewer
) a[email protected]
:{ "role": "roles/iam.securityReviewer", "members": [ "user:[email protected]" ] }
Per concedere lo stesso ruolo a
[email protected]
, aggiungi[email protected]
all'associazione di ruoli esistente:{ "role": "roles/iam.securityReviewer", "members": [ "user:[email protected]", "user:[email protected]" ] }
Per concedere un ruolo non ancora incluso nel criterio di autorizzazione, aggiungi una nuova associazione di ruoli:
gcloud
Modifica il criterio di autorizzazione aggiungendo una nuova associazione di ruolo che conceda il ruolo all'entità. Questa modifica avrà effetto solo dopo aver impostato il criterio di autorizzazione aggiornato.
Ad esempio, per concedere il ruolo Amministratore Compute Storage (
roles/compute.storageAdmin
) a[email protected]
, aggiungi la seguente associazione del ruolo all'arraybindings
per il criterio di autorizzazione:{ "role": "roles/compute.storageAdmin", "members": [ "user:[email protected]" ] }
C#
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM C#.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Java
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM Java.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM Python.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
REST
Modifica il criterio di autorizzazione aggiungendo una nuova associazione di ruolo che conceda il ruolo all'entità. Questa modifica avrà effetto solo dopo aver impostato il criterio di autorizzazione aggiornato.
Ad esempio, per concedere il ruolo Amministratore Compute Storage (
roles/compute.storageAdmin
) a[email protected]
, aggiungi la seguente associazione del ruolo all'arraybindings
per il criterio di autorizzazione:{ "role": "roles/compute.storageAdmin", "members": [ "user:[email protected]" ] }
Puoi concedere solo i ruoli relativi ai servizi API attivati. Se un servizio, come Compute Engine, non è attivo, non puoi concedere ruoli esclusivamente relativi a Compute Engine. Per maggiori informazioni, consulta Abilitare e disabilitare le API.
Esistono alcuni vincoli univoci quando si assegnano autorizzazioni sui progetti, soprattutto quando si assegna il ruolo Proprietario (
roles/owner
). Per ulteriori informazioni, consulta laprojects.setIamPolicy()
documentazione di riferimento.Revocare un ruolo
Per revocare un ruolo, rimuovi l'entità dall'associazione del ruolo. Se non ci sono altre entità nell'associazione del ruolo, rimuovi l'intera associazione del ruolo.
gcloud
Revoca un ruolo modificando il criterio di autorizzazione JSON o YAML restituito dal comando
get-iam-policy
. Questa modifica avrà effetto solo dopo aver impostato il criterio di autorizzazione aggiornato.Per revocare un ruolo da un'entità, elimina le entità o le associazioni desiderate dall'array
bindings
per il criterio di autorizzazione.C#
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM C#.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM Go.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Java
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM Java.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, vedi librerie client IAM. Per maggiori informazioni, consulta la documentazione di riferimento dell'API IAM Python.
Per eseguire l'autenticazione in IAM, configura Credenziali predefinite dell'applicazione. Per saperne di più, consulta Prima di iniziare.
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
REST
Revoca un ruolo modificando il criterio di autorizzazione JSON o YAML restituito dal comando
get-iam-policy
. Questa modifica avrà effetto solo dopo aver impostato il criterio di autorizzazione aggiornato.Per revocare un ruolo da un'entità, elimina le entità o le associazioni desiderate dall'array
bindings
per il criterio di autorizzazione.Imposta il criterio di autorizzazione
Dopo aver modificato il criterio di autorizzazione per concedere e revocare i ruoli desiderati, chiama
setIamPolicy()
per apportare gli aggiornamenti.gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Per impostare il criterio di autorizzazione per la risorsa, esegui il comando
set-iam-policy
per la risorsa:gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
Fornisci i seguenti valori:
-
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi impostare il criterio di autorizzazione. Utilizza uno dei seguenti valori:projects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione di Google Cloud. Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
PATH
: il percorso di un file contenente il nuovo criterio di autorizzazione.
La risposta contiene il criterio di autorizzazione aggiornato.
Ad esempio, il comando seguente imposta il criterio di autorizzazione archiviato in
policy.json
come criterio di autorizzazione per il progettomy-project
:gcloud projects set-iam-policy my-project ~/policy.json
-
C#
Java
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come impostare il criterio di autorizzazione per un progetto. Per scoprire come impostare il criterio di autorizzazione di una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
Python
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come impostare il criterio di autorizzazione per un progetto. Per scoprire come impostare il criterio di autorizzazione di una cartella o un'organizzazione, consulta la documentazione relativa alla libreria client di Resource Manager per il tuo linguaggio di programmazione.
REST
Il metodo
setIamPolicy
dell'API Resource Manager imposta il criterio nella richiesta come nuovo criterio di autorizzazione per il progetto, la cartella o l'organizzazione.Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
API_VERSION
: la versione dell'API da utilizzare. Per i progetti e le organizzazioni, utilizzav1
. Per le cartelle, utilizzav2
.RESOURCE_TYPE
: il tipo di risorsa di cui vuoi gestire il criterio. Utilizza il valoreprojects
,folders
oorganizations
.RESOURCE_ID
: l'ID progetto, organizzazione o cartella Google Cloud. Gli ID progetto sono stringhe alfanumeriche, comemy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
.-
POLICY
: una rappresentazione JSON del criterio che vuoi impostare. Per ulteriori informazioni sul formato di un criterio, consulta la documentazione di riferimento alle norme.
Metodo HTTP e URL:
POST https://cloudresourcemanager.googleapis.com/API_VERSION/RESOURCE_TYPE/RESOURCE_ID:setIamPolicy
Corpo JSON della richiesta:
{ "policy": POLICY }
Per inviare la richiesta, espandi una di queste opzioni:
La risposta contiene il criterio di autorizzazione aggiornato.
Passaggi successivi
- Scopri come gestire l'accesso agli account di servizio.
- Scopri la procedura generale per la gestione dell'accesso ad altre risorse.
- Scopri come scegliere i ruoli predefiniti più appropriati.
- Utilizza lo strumento per la risoluzione dei problemi relativi ai criteri per capire perché un utente ha o non ha accesso a una risorsa o ha l'autorizzazione per chiamare un'API.
- Scopri come visualizzare i ruoli che è possibile concedere per una determinata risorsa.
- Scopri come rendere condizionale l'accesso di un'entità con associazioni di ruoli condizionali.
- Scopri come proteggere le tue applicazioni con Identity-Aware Proxy.
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Inizia gratuitamenteSalvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-09-09 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }]