Questa pagina descrive come concedere, modificare e revocare l'accesso a progetti, cartelle e organizzazioni. Quando concedi l'accesso a progetti, cartelle e organizzazioni, concedi anche l'accesso alle risorse al loro interno.
Per scoprire come gestire l'accesso ad altre risorse, consulta le seguenti guide:
In Identity and Access Management (IAM), l'accesso viene concesso tramite policy di autorizzazione, note anche come policy IAM. Un criterio di autorizzazione รจ collegato a una risorsaGoogle Cloud . Ogni policy di autorizzazione contiene una raccolta di associazioni di ruoli che associano una o piรน entitร , come utenti o service account, a un ruolo IAM. Queste associazioni di ruolo concedono i ruoli specificati alle entitร , sia sulla risorsa a cui รจ associato il criterio di autorizzazione sia su tutti i discendenti della risorsa. Per maggiori informazioni sui criteri di autorizzazione, consulta Comprensione dei criteri di autorizzazione.
Puoi gestire l'accesso a progetti, cartelle e organizzazioni con la consoleGoogle Cloud , Google Cloud CLI, l'API REST o le librerie client 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 esempi di .NET questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le credenziali predefinite dell'applicazione con le tue credenziali utente.
Installa Google Cloud CLI.
Se utilizzi un provider di identitร (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identitร federata.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per saperne di piรน, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione Google Cloud .
Java
Per utilizzare gli esempi di Java questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le credenziali predefinite dell'applicazione con le tue credenziali utente.
Installa Google Cloud CLI.
Se utilizzi un provider di identitร (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identitร federata.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per saperne di piรน, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione Google Cloud .
Python
Per utilizzare gli esempi di Python questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le credenziali predefinite dell'applicazione con le tue credenziali utente.
Installa Google Cloud CLI.
Se utilizzi un provider di identitร (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identitร federata.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Per saperne di piรน, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione Google Cloud .
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali fornite a gcloud CLI.
Installa Google Cloud CLI.
Se utilizzi un provider di identitร (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identitร federata.
Per saperne di piรน, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .
Ruoli IAM richiesti
Quando crei un progetto, una cartella o un'organizzazione, ti viene automaticamente assegnato un ruolo che ti consente di gestire l'accesso per quella risorsa. Per saperne di piรน, consulta Norme predefinite.
Se non hai creato il progetto, la cartella o l'organizzazione, assicurati di disporre dei ruoli necessari per gestire l'accesso a questa 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:
Project IAM Admin (
roles/resourcemanager.projectIamAdmin
) -
Per gestire l'accesso a una cartella:
Folder Admin (
roles/resourcemanager.folderAdmin
) -
Per gestire l'accesso a progetti, cartelle e organizzazioni:
Amministratore dell'organizzazione (
roles/resourcemanager.organizationAdmin
) -
Per gestire l'accesso a quasi tutte le risorse Google Cloud :
Amministratore della sicurezza (
roles/iam.securityAdmin
)
Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire l'accesso a un progetto, una cartella o un'organizzazione. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
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 ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Visualizzare l'accesso attuale
Puoi visualizzare chi ha accesso al tuo progetto, alla tua cartella o alla tua organizzazione utilizzando la console Google Cloud , gcloud CLI, l'API REST o le librerie client Resource Manager.
Console
Nella console Google Cloud , vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
La console Google Cloud elenca tutti i principal a cui sono stati concessi ruoli nel tuo progetto, nella tua cartella o nella tua organizzazione. Questo elenco include i principal che hanno ereditato i ruoli nella risorsa dalle risorse padre. Per ulteriori informazioni sull'ereditarietร delle policy, consulta Ereditarietร delle policy e gerarchia delle risorse.
(Facoltativo) Per visualizzare le concessioni di ruoli per gli agenti di servizio, 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 tuo progetto, alla tua cartella o alla tua organizzazione, recupera la policy di autorizzazione per la risorsa. Per scoprire come interpretare le policy di autorizzazione, consulta la sezione Comprendere le policy di autorizzazione.
Per ottenere la policy 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 tuo progetto, della tua cartella o della tua organizzazione Google Cloud . Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
FORMAT
: Il formato desiderato per la policy. Utilizzajson
oyaml
. -
PATH
: il percorso di un nuovo file di output per la policy.
Ad esempio, il seguente comando recupera il criterio per il progetto
my-project
e lo salva nella tua home directory in formato JSON:gcloud projects get-iam-policy my-project --format=json > ~/policy.json
-
API_VERSION
: la versione dell'API da utilizzare. Per progetti e 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 del tuo Google Cloud progetto, della tua organizzazione o della tua cartella. Gli ID progetto sono stringhe alfanumeriche, comemy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
.POLICY_VERSION
: La versione della policy da restituire. Le richieste devono specificare la versione piรน recente delle norme, ovvero la versione 3. Per maggiori dettagli, vedi Specificare una versione delle norme quando si recuperano le norme.
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 la sezione Librerie client di Resource Manager.
Per vedere chi ha accesso al tuo progetto, alla tua cartella o alla tua organizzazione, recupera la policy di autorizzazione per la risorsa. Per scoprire come interpretare le policy di autorizzazione, consulta Comprendere le policy di autorizzazione.
L'esempio seguente mostra come ottenere la policy di autorizzazione per un progetto. Per scoprire come ottenere la policy di autorizzazione per una cartella o un'organizzazione, consulta la documentazione della 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 la sezione Librerie client di Resource Manager.
Per vedere chi ha accesso al tuo progetto, alla tua cartella o alla tua organizzazione, recupera la policy di autorizzazione per la risorsa. Per scoprire come interpretare le policy di autorizzazione, consulta Comprendere le policy di autorizzazione.
L'esempio seguente mostra come ottenere la policy di autorizzazione per un progetto. Per scoprire come ottenere la policy di autorizzazione per una cartella o un'organizzazione, consulta la documentazione della 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 la sezione Librerie client di Resource Manager.
Per vedere chi ha accesso al tuo progetto, alla tua cartella o alla tua organizzazione, recupera la policy di autorizzazione per la risorsa. Per scoprire come interpretare le policy di autorizzazione, consulta Comprendere le policy di autorizzazione.
L'esempio seguente mostra come ottenere la policy di autorizzazione per un progetto. Per scoprire come ottenere la policy di autorizzazione per una cartella o un'organizzazione, consulta la documentazione della libreria client di Resource Manager per il tuo linguaggio di programmazione.
REST
Per vedere chi ha accesso al tuo progetto, alla tua cartella o alla tua organizzazione, recupera la policy di autorizzazione per la risorsa. Per scoprire come interpretare le policy di autorizzazione, consulta la sezione Comprendere le policy di autorizzazione.
Il metodo getIamPolicy
dell'API Resource Manager
recupera il criterio di autorizzazione di un progetto, una cartella o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
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 la policy di autorizzazione della risorsa. Ad esempio:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/owner", "members": [ "user:my-user@example.com" ] } ] }
Concedi o revoca un singolo ruolo IAM
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, service account, gruppi Google e domini. Per un elenco di tutti i tipi di entitร , consulta Tipi di entitร .
In genere, le modifiche ai criteri diventano effettive entro 2 minuti. Tuttavia, in alcuni casi, la propagazione delle modifiche nel sistema puรฒ richiedere almeno 7 minuti.
Se hai bisogno di aiuto per identificare il ruolo predefinito piรน appropriato, vedi Trovare i ruoli predefiniti giusti.
Concedi un singolo ruolo IAM
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 per la risorsa, trova una riga contenente l'entitร , fai clic su
Modifica entitร in quella riga e fai clic su Aggiungi un altro ruolo.Per concedere un ruolo a un agente di servizio, seleziona la casella di controllo Includi concessioni di ruoli fornite da Google per visualizzarne l'indirizzo email.
Per concedere un ruolo a un'entitร che non ha ruoli esistenti nella risorsa, fai clic su identificatore dell'entitร , ad esempio
Concedi accesso, quindi inserisci unmy-user@example.com
o//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.
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 sulla risorsa.
Per concedere un ruolo a un'entitร per piรน progetti, cartelle o organizzazioni, segui questi passaggi:
Nella console Google Cloud , vai alla pagina Gestisci risorse.
Seleziona tutte le risorse per cui vuoi concedere le autorizzazioni.
Se il riquadro 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 fai clic su Aggiungi un altro ruolo.
- Per concedere un ruolo a un'entitร che non ha giร altri ruoli,
fai clic su identificatore
dell'entitร , ad esempio
my-user@example.com
o//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.
Aggiungi entitร ,
quindi inserisci un
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 su 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
ti consente di concedere rapidamente un ruolo a un'entitร .Prima di utilizzare i dati dei comandi 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 tuo progetto, della tua cartella o della tua organizzazione Google Cloud . Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
PRINCIPAL
: Un identificatore per l'entitร o il membro, che di solito ha la seguente forma:PRINCIPAL_TYPE:ID
. Ad esempio,user:my-user@example.com
oprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
. Per un elenco completo dei valori che puรฒ assumerePRINCIPAL
, consulta Identificatori del principal.Per il tipo di entitร
user
, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o Cloud Identity. Per scoprire 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 del ruolo. Se non vuoi aggiungere una condizione, utilizza il valoreNone
. Per ulteriori informazioni sulle condizioni, consulta la panoramica delle condizioni.
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.
-
Revoca un singolo ruolo IAM
Per revocare un singolo ruolo da un'entitร , segui questi passaggi:
Console
Nella console Google Cloud , vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
Individua la riga contenente l'entitร di cui vuoi revocare l'accesso. Quindi, fai clic su
Modifica entitร in quella riga.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_NAMEFornisci 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 tuo progetto, della tua cartella o della tua organizzazione Google Cloud . Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
PRINCIPAL
: un identificatore per l'entitร o il membro, che di solito ha il seguente formato:PRINCIPAL_TYPE:ID
. Ad esempio,user:my-user@example.com
oprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.Per il tipo di entitร
user
, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o Cloud Identity. Per scoprire 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 dal account di servizio
example-service-account@example-project.iam.gserviceaccount.com
per il progettoexample-project
:gcloud projects remove-iam-policy-binding example-project
--member=serviceAccount:example-service-account@example-project.iam.gserviceaccount.com
--role=roles/resourcemanager.projectCreator -
Per assicurarti di non revocare ruoli necessari, puoi attivare i suggerimenti sul rischio di modifica. Modifica i consigli sui rischi genera avvisi quando tenti di revocare i ruoli a livello di progetto che Google Cloud ha identificato come importanti.
Concedi o revoca piรน ruoli IAM 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 ne ha giร per la risorsa, trova una riga contenente l'entitร , fai clic su
Modifica entitร in quella riga e fai clic su Aggiungi un altro ruolo.Per modificare i ruoli di un agente di servizio, seleziona la casella di controllo Includi concessioni di ruoli fornite da Google per visualizzarne l'indirizzo email.
Per concedere ruoli a un'entitร che non ne ha per la risorsa, fai clic su identificatore dell'entitร , ad esempio
Concedi accesso, quindi inserisci unmy-user@example.com
o//iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
.
Modifica i ruoli dell'entitร :
- Per concedere un ruolo a un'entitร che non ha 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 al principal, fai clic su Aggiungi un altro ruolo, poi seleziona un ruolo da concedere dall'elenco a discesa.
- Per sostituire uno dei ruoli del principale con un ruolo diverso, fai clic sul ruolo esistente, quindi scegli un ruolo diverso da concedere dall'elenco a discesa.
- Per revocare uno dei ruoli dell'entitร , fai clic sul pulsante Elimina per ogni ruolo da 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.
Concedere o revocare piรน ruoli IAM in modo programmatico
Per apportare modifiche all'accesso su larga scala che comportano la concessione e la revoca di piรน ruoli per piรน entitร , utilizza il pattern read-modify-write per aggiornare i criteri di autorizzazione della risorsa:
- Leggi la policy di autorizzazione corrente chiamando
getIamPolicy()
. - Modifica la policy di autorizzazione utilizzando un editor di testo o in modo programmatico per aggiungere o rimuovere eventuali entitร o associazioni di ruoli.
- Scrivi la policy di autorizzazione aggiornata chiamando
setIamPolicy()
.
Puoi utilizzare gcloud CLI, l'API REST o le librerie client di Resource Manager per aggiornare la policy di autorizzazione.
In genere, le modifiche ai criteri diventano effettive entro 2 minuti. Tuttavia, in alcuni casi, la propagazione delle modifiche nel sistema puรฒ richiedere almeno 7 minuti.
Ottieni la policy 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 la policy 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 la policy di autorizzazione. Utilizza uno dei seguenti valori:projects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del tuo progetto, della tua cartella o della tua organizzazione Google Cloud . Gli ID progetto sono alfanumerici, ad esempiomy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
. -
FORMAT
: Il formato desiderato per la policy di autorizzazione. Utilizzajson
oyaml
. -
PATH
: il percorso di un nuovo file di output per la policy consenti.
Ad esempio, il seguente comando recupera il criterio di autorizzazione per il progetto
my-project
e lo salva nella tua home directory in formato JSON:gcloud projects get-iam-policy my-project --format json > ~/policy.json
-
API_VERSION
: la versione dell'API da utilizzare. Per progetti e 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 del tuo Google Cloud progetto, della tua organizzazione o della tua cartella. Gli ID progetto sono stringhe alfanumeriche, comemy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
.POLICY_VERSION
: La versione della policy da restituire. Le richieste devono specificare la versione piรน recente delle norme, ovvero la versione 3. Per maggiori dettagli, vedi Specificare una versione delle norme quando si recuperano le norme.
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 la sezione Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere la policy di autorizzazione per un progetto. Per scoprire come ottenere la policy di autorizzazione di una cartella o di un'organizzazione, consulta la documentazione della libreria client 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 la sezione Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere la policy di autorizzazione per un progetto. Per scoprire come ottenere la policy di autorizzazione di una cartella o di un'organizzazione, consulta la documentazione della libreria client 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 la sezione Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere la policy di autorizzazione per un progetto. Per scoprire come ottenere la policy di autorizzazione di una cartella o di un'organizzazione, consulta la documentazione della libreria client Resource Manager per il tuo linguaggio di programmazione.
REST
Il metodo getIamPolicy
dell'API Resource Manager
recupera il criterio di autorizzazione di un progetto, una cartella o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
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 la policy di autorizzazione della risorsa. Ad esempio:
{ "version": 1, "etag": "BwWKmjvelug=", "bindings": [ { "role": "roles/owner", "members": [ "user:my-user@example.com" ] } ] }
Salva la risposta in un file del tipo appropriato (json
o yaml
).
Modifica la policy di autorizzazione
Modifica la copia locale del criterio di autorizzazione della risorsa in modo programmatico o utilizzando un editor di testo per riflettere i ruoli che vuoi concedere o revocare.
Per evitare di sovrascrivere altre modifiche, non modificare o rimuovere il campo etag
del criterio di autorizzazione. Il campo etag
identifica lo stato attuale
della policy di autorizzazione. Quando imposti il criterio di autorizzazione aggiornato,
IAM confronta il valore etag
nella richiesta con il valore
etag
esistente e scrive il criterio di autorizzazione solo se i valori corrispondono.
Per modificare i ruoli concessi da una policy di autorizzazione, devi modificare le associazioni di ruolo nella policy 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 la sezione Informazioni sui ruoli.
- Ruoli predefiniti:
PRINCIPAL_1
,PRINCIPAL_2
,...PRINCIPAL_N
: identificatori delle entitร a cui vuoi concedere il ruolo.Gli identificatori dell'entitร in genere hanno il seguente formato:
PRINCIPAL-TYPE:ID
. Ad esempio,user:my-user@example.com
oprincipalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com
. Per un elenco completo dei valori che puรฒ assumerePRINCIPAL
, consulta Identificatori del principal.Per il tipo di entitร
user
, il nome di dominio nell'identificatore deve essere un dominio Google Workspace o Cloud Identity. Per scoprire come configurare un dominio Cloud Identity, consulta la panoramica di Cloud Identity.CONDITIONS
: (Facoltativo) Qualsiasi condizione che specifica quando verrร concesso l'accesso.
Concedi un ruolo IAM
Per concedere ruoli alle tue entitร , modifica le associazioni dei ruoli nel criterio di autorizzazione. Per scoprire 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, vedi Trovare i ruoli predefiniti giusti.
Se vuoi, puoi utilizzare le condizioni per concedere i ruoli solo quando vengono soddisfatti determinati requisiti.
Per concedere un ruolo giร incluso nella policy di autorizzazione, aggiungi l'entitร a un'associazione di ruolo esistente:
gcloud
Modifica la policy di autorizzazione restituita aggiungendo l'entitร a un'associazione di ruolo esistente. Questa modifica non verrร applicata finchรฉ non imposterai il criterio di autorizzazione aggiornato.
Ad esempio, supponiamo che la policy di autorizzazione contenga la seguente associazione di ruolo, che
concede il ruolo revisore della sicurezza (roles/iam.securityReviewer
) a
Kai:
{
"role": "roles/iam.securityReviewer",
"members": [
"user:kai@example.com"
]
}
Per concedere lo stesso ruolo a Raha, aggiungi l'identificatore dell'entitร di Raha all'associazione di ruolo esistente:
{ "role": "roles/iam.securityReviewer", "members": [ "user:kai@example.com", "user:raha@example.com" ] }
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 la sezione 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 la sezione 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 la sezione 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 la sezione Librerie client di Resource Manager.
REST
Modifica la policy di autorizzazione restituita aggiungendo l'entitร a un'associazione di ruolo esistente. Questa modifica non verrร applicata finchรฉ non imposterai il criterio di autorizzazione aggiornato.
Ad esempio, supponiamo che la policy di autorizzazione contenga la seguente associazione di ruolo, che
concede il ruolo revisore della sicurezza (roles/iam.securityReviewer
) a
Kai:
{
"role": "roles/iam.securityReviewer",
"members": [
"user:kai@example.com"
]
}
Per concedere lo stesso ruolo a Raha, aggiungi l'identificatore dell'entitร di Raha all'associazione di ruolo esistente:
{ "role": "roles/iam.securityReviewer", "members": [ "user:kai@example.com", "user:raha@example.com" ] }
Per concedere un ruolo non ancora incluso nella policy di autorizzazione, aggiungi una nuova associazione di ruolo:
gcloud
Modifica la policy di autorizzazione aggiungendo una nuova associazione di ruolo che concede il ruolo all'entitร . Questa modifica non verrร applicata finchรฉ non imposterai il criterio di autorizzazione aggiornato.
Ad esempio, per concedere il ruolo Amministratore storage di Compute
(roles/compute.storageAdmin
) a Raha, aggiungi la seguente associazione di ruolo all'array
bindings
per la policy di autorizzazione:
{
"role": "roles/compute.storageAdmin",
"members": [
"user:raha@example.com"
]
}
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM C#.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
Java
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM Java.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM Python.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
REST
Modifica la policy di autorizzazione aggiungendo una nuova associazione di ruolo che concede il ruolo all'entitร . Questa modifica non verrร applicata finchรฉ non imposterai il criterio di autorizzazione aggiornato.
Ad esempio, per concedere il ruolo Amministratore storage di Compute
(roles/compute.storageAdmin
) a Raha, aggiungi la seguente associazione di ruolo all'array
bindings
per la policy di autorizzazione:
{
"role": "roles/compute.storageAdmin",
"members": [
"user:raha@example.com"
]
}
Puoi concedere solo ruoli correlati ai servizi API attivati. Se un servizio, ad esempio Compute Engine, non รจ attivo, non puoi concedere ruoli esclusivamente correlati a Compute Engine. Per saperne di piรน, consulta Attivare e disattivare le API.
Esistono alcuni vincoli unici quando vengono concesse autorizzazioni sui progetti,
soprattutto quando viene concesso il ruolo Proprietario (roles/owner
). Per ulteriori informazioni,
consulta la
projects.setIamPolicy()
documentazione di riferimento.
Revocare un ruolo IAM
Per revocare un ruolo, rimuovi l'entitร dall'associazione di ruolo. Se non sono presenti altre entitร nell'associazione di ruolo, rimuovi l'intera associazione di ruolo.
gcloud
Revoca un ruolo modificando la policy di autorizzazione JSON o YAML restituita dal comando
get-iam-policy
. Questa modifica non verrร applicata finchรฉ non
imposterai il criterio di autorizzazione aggiornato.
Per revocare un ruolo da un'entitร , elimina l'entitร o l'associazione dall'array
bindings
per la policy di autorizzazione.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM C#.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM Go.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
Java
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM Java.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la sezione Librerie client IAM. Per saperne di piรน, consulta la documentazione di riferimento dell'API IAM Python.
Per eseguire l'autenticazione in IAM, configura le 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 la sezione Librerie client di Resource Manager.
REST
Revoca un ruolo modificando la policy di autorizzazione JSON o YAML restituita dal comando
get-iam-policy
. Questa modifica non verrร applicata finchรฉ non
imposterai il criterio di autorizzazione aggiornato.
Per revocare un ruolo da un'entitร , elimina l'entitร o l'associazione dall'array
bindings
per la policy di autorizzazione.
Impostare la policy di autorizzazione
Dopo aver modificato la policy di autorizzazione per concedere e revocare i ruoli, chiama
setIamPolicy()
per aggiornare la policy.
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 la policy 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 la policy di autorizzazione. Utilizza uno dei seguenti valori:projects
,resource-manager folders
oorganizations
. -
RESOURCE_ID
: l'ID del tuo progetto, della tua cartella o della tua organizzazione 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 che contiene la nuova policy di autorizzazione.
La risposta contiene la policy di autorizzazione aggiornata.
Ad esempio, il seguente comando imposta la policy di autorizzazione archiviata in
policy.json
come policy di autorizzazione per il progettomy-project
:gcloud projects set-iam-policy my-project ~/policy.json
-
API_VERSION
: la versione dell'API da utilizzare. Per progetti e 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 del tuo Google Cloud progetto, della tua organizzazione o della tua cartella. Gli ID progetto sono stringhe alfanumeriche, comemy-project
. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012
.-
POLICY
: una rappresentazione JSON della policy che vuoi impostare. Per ulteriori informazioni sul formato di una policy, consulta la documentazione di riferimento delle policy.
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 la sezione Librerie client di Resource Manager.
L'esempio seguente mostra come impostare la policy di autorizzazione per un progetto. Per scoprire come impostare la policy di autorizzazione di una cartella o di un'organizzazione, consulta la documentazione della libreria client 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 la sezione Librerie client di Resource Manager.
L'esempio seguente mostra come impostare la policy di autorizzazione per un progetto. Per scoprire come impostare la policy di autorizzazione di una cartella o di un'organizzazione, consulta la documentazione della libreria client 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, apporta le seguenti sostituzioni:
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 la policy di autorizzazione aggiornata.
Passaggi successivi
- Scopri come gestire l'accesso agli account di servizio.
- Scopri i passaggi generali per gestire l'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 l'autorizzazione a chiamare un'API.
- Scopri come visualizzare i ruoli che puoi concedere per una determinata risorsa.
- Scopri come rendere condizionale l'accesso di un'entitร con le 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 gratuitamente