In questa pagina viene descritto come creare e gestire i ruoli personalizzati di Identity and Access Management (IAM). La gestione dei ruoli include la modifica, la disattivazione, l'elenco, l'eliminazione e l'annullamento dei ruoli.
Prima di iniziare
Attiva IAM API.
Comprendi la gerarchia delle risorse di Google Cloud.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare e gestire i ruoli personalizzati, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Per gestire i ruoli di un progetto: amministratore di ruoli (
roles/iam.roleAdmin
) nel progetto di cui vuoi gestire i ruoli -
Per gestire i ruoli di un'organizzazione:
Amministratore ruolo organizzazione (
roles/iam.organizationRoleAdmin
) nell'organizzazione per cui vuoi gestire i ruoli
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.
Visualizzazione delle autorizzazioni disponibili per progetti, cartelle e organizzazioni
Puoi creare ruoli personalizzati per un'intera organizzazione o per un progetto specifico nell'organizzazione.
Nei ruoli personalizzati puoi includere molte autorizzazioni IAM, ma non tutte. Ogni autorizzazione ha uno dei seguenti livelli di assistenza da utilizzare nei ruoli personalizzati:
Livello di supporto | Descrizione |
---|---|
SUPPORTED |
L'autorizzazione è completamente supportata nei ruoli personalizzati. |
TESTING |
Google sta testando l'autorizzazione per verificare la compatibilità con i ruoli personalizzati. Puoi includere l'autorizzazione nei ruoli personalizzati, ma potresti notare comportamenti imprevisti. Opzione non consigliata per l'uso in produzione. |
NOT_SUPPORTED |
L'autorizzazione non è supportata nei ruoli personalizzati. |
Un ruolo personalizzato a livello di organizzazione può includere qualsiasi autorizzazione IAM supportata nei ruoli personalizzati.
Un ruolo personalizzato a livello di progetto può contenere qualsiasi autorizzazione supportata, ad eccezione delle autorizzazioni pertinenti solo a livello di organizzazione o cartella, ad esempio resourcemanager.organizations.get
.
Per verificare quali autorizzazioni sono disponibili per i ruoli personalizzati a livello di organizzazione e di progetto, puoi utilizzare l'interfaccia a riga di comando gcloud o l'API Identity and Access Management per elencare le autorizzazioni disponibili in un'organizzazione o un progetto specifici. Ad esempio, puoi ottenere tutte le autorizzazioni disponibili per i ruoli personalizzati creati nel tuo progetto.
Alcune autorizzazioni potrebbero non essere visibili o utilizzabili in un ruolo personalizzato, anche se sono supportate nei ruoli personalizzati. Ad esempio, un'autorizzazione potrebbe non essere disponibile per i ruoli personalizzati se non hai attivato l'API per il servizio.
gcloud CLI
Utilizza il comando gcloud iam list-testable-permissions
per ottenere un elenco delle autorizzazioni disponibili per i ruoli personalizzati in un progetto o un'organizzazione specifici. La risposta elenca le autorizzazioni che puoi utilizzare nei ruoli personalizzati per il progetto o l'organizzazione.
Per elencare le autorizzazioni disponibili nei ruoli personalizzati per un progetto o un'organizzazione, esegui questo comando:
gcloud iam list-testable-permissions full-resource-name \ --filter="customRolesSupportLevel!=NOT_SUPPORTED"
Sostituisci full-resource-name
con uno dei seguenti valori:
- Progetto:
//cloudresourcemanager.googleapis.com/projects/project-id
(ad esempio,//cloudresourcemanager.googleapis.com/projects/my-project-id
) - Organizzazione:
//cloudresourcemanager.googleapis.com/organizations/numeric-id
(ad esempio,//cloudresourcemanager.googleapis.com/organizations/123456789012
)
I risultati indicano se ogni autorizzazione è supportata nei ruoli personalizzati.
Le autorizzazioni che non hanno un campo customRolesSupportLevel
sono completamente supportate.
Il comando list-testable-permissions
potrebbe restituire centinaia di risultati. Questo esempio parziale mostra il formato di ogni risultato:
---
name: appengine.applications.create
stage: GA
---
customRolesSupportLevel: TESTING
name: appengine.applications.disable
stage: GA
---
name: appengine.applications.get
stage: GA
---
name: appengine.applications.update
stage: GA
---
name: appengine.instances.delete
stage: GA
---
name: appengine.instances.get
stage: GA
---
REST
Il metodo
permissions.queryTestablePermissions
elenca le autorizzazioni disponibili in un'organizzazione o un progetto.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
full-resource-name
: un URI composto dal nome del servizio e dal percorso della risorsa. Per esempi, consulta la pagina Nomi completi delle risorse.page-size
: facoltativo. Il numero di autorizzazioni da includere nella risposta. Il valore predefinito è 100 e il valore massimo è 1000. Se il numero di autorizzazioni è maggiore delle dimensioni della pagina, la risposta contiene un token di impaginazione che puoi utilizzare per recuperare la pagina successiva dei risultati.next-page-token
: facoltativo. Il token di impaginazione restituito in una risposta precedente da questo metodo. Se specificato, l'elenco delle autorizzazioni verificabili inizierà dove è terminata la risposta precedente.
Metodo e URL HTTP:
POST https://iam.googleapis.com/v1/permissions:queryTestablePermissions
Testo JSON richiesta:
{ "fullResourceName": "full-resource-name" "pageSize": page-size, "pageToken": "next-page-token" }
Per inviare la richiesta, espandi una delle seguenti opzioni:
La risposta contiene l'elenco delle autorizzazioni.
{ "permissions": [ { "name": "iam.serviceAccountKeys.create", "stage": "GA" }, { "name": "iam.serviceAccountKeys.delete", "stage": "GA" }, { "name": "iam.serviceAccountKeys.get", "stage": "GA" } ], "nextPageToken": "CgoHBajEfjUDQyABEPaIv5vIiMDTVhgDIhtpYW0uc2VydmljZUFjY291bnRLZXlzLmxpc3Q" }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Recupera i metadati del ruolo
Prima di creare un ruolo personalizzato, potresti voler recuperare i metadati sia per i ruoli predefiniti sia per quelli personalizzati. I metadati del ruolo includono l'ID ruolo e le autorizzazioni contenute nel ruolo. Per visualizzare i metadati, puoi utilizzare la console Google Cloud o l'API IAM.
Per visualizzare i metadati del ruolo, utilizza uno dei metodi seguenti:
Console
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Seleziona la tua organizzazione o il tuo progetto dall'elenco a discesa nella parte superiore della pagina.
Seleziona la casella di controllo relativa a uno o più ruoli per visualizzare le autorizzazioni dei ruoli. Nel riquadro laterale a destra vengono visualizzate le eventuali autorizzazioni contenute nei ruoli.
Le icone nella colonna Tipo indicano se si tratta di un ruolo personalizzato
o di un ruolo predefinito
Se vuoi trovare tutti i ruoli che includono un'autorizzazione specifica, digita il nome dell'autorizzazione nella casella Filtro nella parte superiore dell'elenco dei ruoli.
gcloud CLI
Utilizza il comando gcloud iam roles describe
per visualizzare i metadati per i ruoli predefiniti e personalizzati.
Per visualizzare i metadati per un ruolo predefinito, esegui questo comando:
gcloud iam roles describe role-id
role-id
è l'ID del ruolo. I ruoli predefiniti includono il prefisso role
negli ID, ad esempio roles/iam.roleViewer
.
L'esempio seguente mostra l'output del comando describe
quando viene eseguito sul ruolo predefinito roles/iam.roleViewer
:
gcloud iam roles describe roles/iam.roleViewer
description: Read access to all custom roles in the project. etag: AA== includedPermissions: - iam.roles.get - iam.roles.list - resourcemanager.projects.get - resourcemanager.projects.getIamPolicy name: roles/iam.roleViewer stage: GA title: Role Viewer
Per visualizzare i metadati di un ruolo personalizzato, esegui uno dei seguenti comandi:
Per visualizzare i metadati di un ruolo personalizzato creato a livello di organizzazione, esegui questo comando:
gcloud iam roles describe --organization=organization-id role-id
Per visualizzare i metadati per un ruolo personalizzato creato a livello di progetto, esegui questo comando:
gcloud iam roles describe --project=project-id role-id
Ogni valore segnaposto è descritto di seguito:
organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.role-id
è l'ID del ruolo, esclusi eventuali prefissi comeprojects/
,organizations/
oroles/
. Ad esempio:myCompanyAdmin
.
Per maggiori informazioni, consulta la documentazione di riferimento per gcloud iam roles describe
.
REST
Il metodo
roles.get
ottiene la definizione di un ruolo.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
role-name
: nome completo del ruolo, inclusi eventuali prefissiorganizations/
,projects/
oroles/
. Ad esempio:organizations/123456789012/roles/myCompanyAdmin
.
Metodo e URL HTTP:
GET https://iam.googleapis.com/v1/full-role-id
Per inviare la richiesta, espandi una delle seguenti opzioni:
La risposta contiene la definizione del ruolo.
{ "name": "projects/my-project/roles/customRole", "title": "My Custom Role", "description": "My custom role description.", "includedPermissions": [ "storage.buckets.get", "storage.buckets.list" ], "etag": "BwWiPg2fmDE=" }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Creazione di un ruolo personalizzato
Puoi creare un ruolo personalizzato a livello di progetto o di organizzazione.
Per creare un ruolo personalizzato, un chiamante deve disporre dell'autorizzazione iam.roles.create
.
Per impostazione predefinita, il proprietario di un progetto o un'organizzazione dispone di questa autorizzazione e può creare e gestire ruoli personalizzati.
Agli utenti diversi dai proprietari, inclusi gli amministratori dell'organizzazione, deve essere assegnato il ruolo Amministratore ruolo organizzazione o il ruolo Amministratore ruolo IAM.
Ogni ruolo personalizzato può contenere fino a 3000 autorizzazioni. Inoltre, le dimensioni totali massime di titolo, descrizione e nomi autorizzazioni per un ruolo personalizzato sono di 64 kB. Se devi creare un ruolo personalizzato più ampio, puoi suddividere le autorizzazioni tra più ruoli personalizzati. Scegli titoli che mostrino la relazione tra i ruoli personalizzati, ad esempio Custom Admin (1 of 2)
e Custom Admin (2 of 2)
.
Ogni ruolo personalizzato può avere una fase di lancio. La maggior parte delle fasi di lancio è informativa e ti aiuta a tenere traccia di ogni ruolo pronto per un uso ampio.
Inoltre, la fase di lancio di DISABLED
ti consente di disattivare un ruolo personalizzato. Per ulteriori informazioni sulle fasi di lancio, consulta
Test e deployment.
Console
Alcuni ruoli predefiniti contengono autorizzazioni deprecate o autorizzazioni che altrimenti non sono consentite nei ruoli personalizzati. Se provi a creare un ruolo personalizzato in base a uno di questi ruoli predefiniti, il ruolo personalizzato ometterà le autorizzazioni ritirate e limitate.
Per creare un nuovo ruolo personalizzato da zero:
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Utilizzando l'elenco a discesa nella parte superiore della pagina, seleziona l'organizzazione o il progetto in cui vuoi creare un ruolo.
Fai clic su Crea ruolo.
Inserisci i valori Nome, Titolo, Descrizione e Fase di lancio del ruolo. Non è possibile modificare il nome del ruolo dopo averlo creato.
Fai clic su Add Permissions (Aggiungi autorizzazioni).
Seleziona le autorizzazioni da includere nel ruolo e fai clic su Aggiungi autorizzazioni. Utilizza gli elenchi a discesa Tutti i servizi e Tutti i tipi per filtrare e selezionare le autorizzazioni in base ai servizi e ai tipi.
Creazione di un ruolo personalizzato in base a un ruolo predefinito esistente:
- Nella console Google Cloud, vai alla pagina Roles (Ruoli).
- Seleziona l'organizzazione o il progetto in cui vuoi creare un ruolo.
- Seleziona i ruoli su cui vuoi basare il nuovo ruolo personalizzato.
- Fai clic su Crea ruolo da selezione.
- Inserisci i valori Nome, Titolo, Descrizione e Fase di lancio del ruolo. Non è possibile modificare il nome del ruolo dopo averlo creato.
- Deseleziona le autorizzazioni che vuoi escludere dal ruolo.
- Fai clic su Aggiungi autorizzazioni per includere le eventuali autorizzazioni.
- Fai clic su Crea.
gcloud CLI
Utilizza il comando gcloud iam roles create
per creare nuovi ruoli personalizzati. Puoi utilizzare questo comando in due modi:
- fornendo un file YAML contenente la definizione del ruolo
- Utilizza i flag per specificare la definizione del ruolo
Quando crei un ruolo personalizzato, devi specificare se si applica al livello dell'organizzazione o del progetto utilizzando i flag --organization=organization-id
o --project=project-id
. Ogni esempio riportato di seguito crea un ruolo personalizzato a livello di progetto.
Un ruolo personalizzato può contenere solo autorizzazioni supportate nei ruoli personalizzati. Se il ruolo personalizzato contiene altre autorizzazioni, il comando non andrà a buon fine.
Per creare un ruolo personalizzato utilizzando un file YAML:
Crea un file YAML contenente la definizione del tuo ruolo personalizzato. Il file deve essere strutturato nel seguente modo:
title: role-title description: role-description stage: launch-stage includedPermissions: - permission-1 - permission-2
Ogni valore segnaposto è descritto di seguito:
role-title
è un titolo amichevole per il ruolo, ad esempio"My Company Admin"
.role-description
è una breve descrizione del ruolo, ad esempio"My custom role description"
.launch-stage
indica la fase di un ruolo nel ciclo di vita del lancio, comeALPHA
,BETA
oGA
.permission-1
epermission-2
sono autorizzazioni da includere nel ruolo personalizzato, comeiam.roles.get
. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.
Salva il file YAML, quindi esegui uno dei seguenti comandi:
Per creare un ruolo personalizzato a livello di organizzazione, esegui questo comando:
gcloud iam roles create role-id --organization=organization-id \ --file=yaml-file-path
Per creare un ruolo personalizzato a livello di progetto, esegui questo comando:
gcloud iam roles create role-id --project=project-id \ --file=yaml-file-path
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.yaml-file-path
è il percorso della posizione del file YAML che contiene la definizione del ruolo personalizzato.
Esempi
L'esempio di file YAML di esempio mostra come creare una definizione di ruolo:
title: "My Company Admin" description: "My custom role description." stage: "ALPHA" includedPermissions: - iam.roles.get - iam.roles.list
L'esempio seguente mostra come creare un ruolo a livello di organizzazione utilizzando il file YAML:
gcloud iam roles create myCompanyAdmin --organization=123456789012 \ --file=my-role-definition.yaml
Se il ruolo è stato creato correttamente, l'output del comando è simile al seguente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: organizations/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
L'esempio seguente mostra come creare un ruolo a livello di progetto utilizzando il file YAML:
gcloud iam roles create myCompanyAdmin --project=my-project-id \ --file=my-role-definition.yaml
Se il ruolo è stato creato correttamente, l'output del comando è simile al seguente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
Per creare un ruolo personalizzato utilizzando i flag:
Esegui uno dei seguenti comandi:
Per creare un ruolo personalizzato a livello di organizzazione, esegui questo comando:
gcloud iam roles create role-id --organization=organization-id \ --title=role-title --description=role-description \ --permissions="permissions-list" --stage=launch-stage
Per creare un ruolo personalizzato a livello di progetto, esegui questo comando:
gcloud iam roles create role-id --project=project-id \ --title=role-title --description=role-description \ --permissions="permissions-list" --stage=launch-stage
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.role-title
è un titolo amichevole per il ruolo, ad esempio"My Company Admin"
.role-description
è una breve descrizione del ruolo, ad esempio"My custom role description."
.permissions-list
contiene un elenco di autorizzazioni separate da virgole che vuoi includere nel ruolo personalizzato. Ad esempio:iam.roles.get,iam.roles.list
. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.launch-stage
indica la fase di un ruolo nel ciclo di vita del lancio, comeALPHA
,BETA
oGA
.
Esempi
L'esempio seguente mostra come creare un ruolo a livello di organizzazione utilizzando i flag:
gcloud iam roles create myCompanyAdmin --organization=123456789012\ --title="My Company Admin" --description="My custom role description." \ --permissions="iam.roles.get,iam.roles.list" --stage=ALPHA
Se il ruolo è stato creato correttamente, l'output del comando è simile al seguente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: organizations/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
L'esempio seguente mostra come creare un ruolo a livello di progetto utilizzando i flag:
gcloud iam roles create myCompanyAdmin --project=my-project-id \ --title="My Company Admin" --description="My custom role description." \ --permissions="iam.roles.get,iam.roles.list" --stage=ALPHA
Se il ruolo è stato creato correttamente, l'output del comando è simile al seguente:
Created role [myCompanyAdmin]. description: My custom role description. etag: BwVkBX0sQD0= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
REST
Il metodo
roles.create
crea un ruolo personalizzato in un progetto o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
resource-type
: il tipo di risorsa di cui vuoi gestire i ruoli personalizzati. Utilizza il valoreprojects
oorganizations
.resource-id
: l'ID progetto o l'ID organizzazione di cui vuoi gestire i ruoli personalizzati. Gli ID progetto sono stringhe alfanumeriche comemy-project
. Gli ID organizzazione sono numerici, come123456789012
.role-id
: nome del ruolo, ad esempiomyCompanyAdmin
.role-title
: il titolo leggibile per il ruolo. Ad esempio,My Company Admin
.role-description
: una descrizione per il ruolo. Ad esempio,"The company admin role allows company admins to access important resources"
.-
permission-1
epermission-2
: le autorizzazioni che vuoi includere nel ruolo. Ad esempio,storage.objects.update
. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.Un ruolo personalizzato può contenere solo autorizzazioni supportate nei ruoli personalizzati. Se il ruolo personalizzato contiene altre autorizzazioni, la richiesta non andrà a buon fine.
launch-stage
: l'attuale fase di lancio del ruolo. Questo campo può contenere uno dei seguenti valori:EAP
,ALPHA
,BETA
,GA
,DEPRECATED
oDISABLED
.
Metodo e URL HTTP:
POST https://iam.googleapis.com/v1/resource-type/resource-id/roles
Testo JSON richiesta:
{ "roleId": "role-id", "role": { "title": "role-title", "description": "role-description", "includedPermissions": [ "permission-1", "permission-2" ], "stage": "launch-stage" } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
La risposta contiene il ruolo che hai creato.
{ "name": "projects/myProject/roles/myCompanyAdmin", "title": "My Company Admin", "description": "My custom role description.", "includedPermissions": [ "iam.roles.get", "iam.roles.list" ], "etag": "BwWox/JbaZw=" }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Modificare un ruolo personalizzato esistente
Un pattern comune per aggiornare i metadati di una risorsa, ad esempio un ruolo personalizzato, è il pattern read-modify-write. Con questo pattern, leggi lo stato attuale del ruolo, aggiorna i dati localmente e poi invii i dati modificati per scriverli.
Il pattern di lettura, modifica e scrittura può causare un conflitto se due o più processi indipendenti provano contemporaneamente la sequenza. Ad esempio, se due proprietari di un progetto tentano di apportare contemporaneamente modifiche in conflitto a un ruolo, alcune modifiche potrebbero non riuscire. IAM risolve questo problema utilizzando una proprietà etag
nei ruoli personalizzati. Questa proprietà viene utilizzata per verificare se il ruolo personalizzato è cambiato dall'ultima richiesta. Quando invii una richiesta a IAM con un valore etag, IAM confronta il valore etag nella richiesta con quello esistente associato al ruolo personalizzato. scrive la modifica solo se i valori etag corrispondono.
Quando aggiorni un ruolo, per prima cosa recupera il ruolo utilizzando roles.get()
, aggiorna il ruolo
e scrivi il ruolo aggiornato utilizzando roles.patch()
. Usa il valore etag quando imposti il ruolo solo se il ruolo corrispondente in roles.get()
contiene un valore etag.
Console
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Utilizzando l'elenco a discesa nella parte superiore della pagina, seleziona il progetto o l'organizzazione che contiene il ruolo che vuoi modificare.
Fai clic su un ruolo personalizzato.
Fai clic su Modifica ruolo.
Per aggiornare i metadati del ruolo, modifica il Titolo, la Descrizione o la Fase di avvio del ruolo.
Per aggiornare le autorizzazioni del ruolo:
- Fai clic su Aggiungi autorizzazioni per aggiungere nuove autorizzazioni al ruolo.
- Deseleziona le autorizzazioni per rimuovere le autorizzazioni dal ruolo.
Fai clic su Aggiorna per salvare il ruolo modificato.
gcloud CLI
Utilizza il comando gcloud iam roles update
per aggiornare i ruoli personalizzati. Puoi utilizzare questo comando in due modi:
- fornendo un file YAML contenente la definizione aggiornata del ruolo
- Mediante i flag per specificare la definizione aggiornata del ruolo
Quando aggiorni un ruolo personalizzato, devi specificare se si applica al livello dell'organizzazione o del progetto utilizzando i flag --organization=organization-id
o --project=project-id
. Ogni esempio riportato di seguito crea un ruolo personalizzato a livello di progetto.
Per aggiornare un ruolo personalizzato utilizzando un file YAML:
Ottieni la definizione attuale del ruolo eseguendo uno dei seguenti comandi:
Per ottenere la definizione del ruolo personalizzato a livello di organizzazione, esegui questo comando:
gcloud iam roles describe role-id --organization=organization-id
Per ottenere la definizione del ruolo personalizzato a livello di progetto, esegui questo comando:
gcloud iam roles describe role-id --project=project-id
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo da aggiornare, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.
Il comando describe
restituisce la definizione del ruolo e include un valore etag
che identifica in modo univoco la versione corrente del ruolo. Per assicurarti che le modifiche di ruolo simultanee non vengano sovrascritte, il valore etag
deve essere fornito nella definizione aggiornata del ruolo.
Il comando describe
restituisce il seguente output:
description: role-description etag: etag-value includedPermissions: - permission-1 - permission-2 name: role-name stage: launch-stage title: role-title
Ogni valore segnaposto è descritto di seguito:
role-description
è una breve descrizione del ruolo, ad esempio"My custom role description"
.etag-value
è l'identificatore univoco della versione corrente del ruolo, ad esempioBwVkBkbfr70=
.permission-1
epermission-2
sono autorizzazioni da includere nel ruolo personalizzato, comeiam.roles.get
. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.role-name
è il nome completo del ruolo, inclusi eventuali prefissiorganizations/
,projects/
oroles/
. Ad esempio,organizations/123456789012/roles/myCompanyAdmin.
launch-stage
indica la fase di un ruolo nel ciclo di vita del lancio, comeALPHA
,BETA
oGA
.role-title
è un titolo amichevole per il ruolo, ad esempio"My Company Admin"
.
Per aggiornare il ruolo, includi la definizione del ruolo restituito in un file YAML o aggiorna il file YAML originale con il valore etag
restituito.
Prendi in considerazione il seguente file YAML di esempio, che contiene l'output del comando describe
per un ruolo a livello di progetto e aggiunge due autorizzazioni Cloud Storage:
description: My custom role description. etag: BwVkBkbfr70= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
Salva il file YAML, quindi esegui uno dei seguenti comandi:
Per aggiornare un ruolo a livello di organizzazione, esegui il comando seguente:
gcloud iam roles update role-id --organization=organization-id \ --file=yaml-file-path
Per aggiornare un ruolo a livello di progetto, esegui il comando seguente:
gcloud iam roles update role-id --project=project-id \ --file=yaml-file-path
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo da aggiornare, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.yaml-file-path
è il percorso della posizione del file YAML che contiene la definizione aggiornata del ruolo personalizzato.
Esempi
L'esempio seguente mostra come aggiornare un ruolo a livello di organizzazione utilizzando un file YAML:
gcloud iam roles update myCompanyAdmin --organization=123456789012 \ --file=my-role-definition.yaml
Se il ruolo è stato aggiornato, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: organizations/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
L'esempio seguente mostra come aggiornare un ruolo a livello di progetto utilizzando un file YAML:
gcloud iam roles update myCompanyAdmin --project=my-project-id \ --file=my-role-definition.yaml
Se il ruolo è stato aggiornato, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
Per aggiornare un ruolo personalizzato tramite flag:
Ogni parte della definizione di un ruolo può essere aggiornata utilizzando un flag corrispondente.
Consulta l'argomento gcloud iam roles update
per un elenco di tutti i possibili flag.
Puoi utilizzare i seguenti flag per aggiungere o rimuovere le autorizzazioni:
--add-permissions=permissions
: aggiunge una o più autorizzazioni separate da virgole al ruolo. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.--remove-permissions=permissions
: rimuove dal ruolo una o più autorizzazioni separate dalla virgola. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.
In alternativa, puoi semplicemente specificare le nuove autorizzazioni utilizzando il flag --permissions=permissions
e fornendo un elenco di autorizzazioni separate da virgole per sostituire l'elenco delle autorizzazioni esistente.
Per aggiornare altre parti della definizione del ruolo, esegui uno dei seguenti comandi:
Per aggiornare un ruolo a livello di organizzazione, esegui il comando seguente:
gcloud iam roles update role-id --organization=organization-id \ --title=role-title --description=role-description \ --stage=launch-stage
Per aggiornare un ruolo a livello di progetto, esegui il comando seguente:
gcloud iam roles update role-id --project=project-id \ --title=role-title --description=role-description \ --stage=launch-stage
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.role-title
è un titolo amichevole per il ruolo, ad esempio"My Company Admin"
.role-description
è una breve descrizione del ruolo, ad esempio"My custom role description."
.launch-stage
indica la fase di un ruolo nel ciclo di vita del lancio, comeALPHA
,BETA
oGA
.
Esempi
L'esempio seguente mostra come aggiungere autorizzazioni a un ruolo a livello di organizzazione utilizzando i flag:
gcloud iam roles update myCompanyAdmin --organization=123456789012 \ --add-permissions="storage.buckets.get,storage.buckets.list"
Se il ruolo è stato aggiornato, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: organization/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
L'esempio seguente mostra come aggiungere autorizzazioni a un ruolo a livello di progetto utilizzando i flag:
gcloud iam roles update myCompanyAdmin --project=my-project-id \ --add-permissions="storage.buckets.get,storage.buckets.list"
Se il ruolo è stato aggiornato, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkBwDN0lg= includedPermissions: - iam.roles.get - iam.roles.list - storage.buckets.get - storage.buckets.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
REST
Il metodo
roles.patch
aggiorna un ruolo personalizzato in un progetto o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
Obbligatorio:
resource-type
: il tipo di risorsa di cui vuoi gestire i ruoli personalizzati. Utilizza il valoreprojects
oorganizations
.resource-id
: l'ID progetto o l'ID organizzazione di cui vuoi gestire i ruoli personalizzati. Gli ID progetto sono stringhe alfanumeriche comemy-project
. Gli ID organizzazione sono numerici, come123456789012
.role-name
: nome completo del ruolo, inclusi eventuali prefissiorganizations/
,projects/
oroles/
. Ad esempio:organizations/123456789012/roles/myCompanyAdmin
.
Consigliato:
etag
: identificatore di una versione del ruolo. Includi questo campo per evitare di sovrascrivere altre modifiche dei ruoli.
Facoltativo (definisci uno o più dei seguenti valori):
role-title
: il titolo leggibile per il ruolo. Ad esempio,My Company Admin
.role-description
: una descrizione per il ruolo. Ad esempio,"The company admin role allows company admins to access important resources"
.permission-1
epermission-2
: le autorizzazioni che vuoi includere nel ruolo. Ad esempio,storage.objects.update
. Non puoi utilizzare caratteri jolly (*
) nei nomi delle autorizzazioni.launch-stage
: l'attuale fase di lancio del ruolo. Questo campo può contenere uno dei seguenti valori:EAP
,ALPHA
,BETA
,GA
,DEPRECATED
oDISABLED
.
Metodo e URL HTTP:
PATCH https://iam.googleapis.com/v1/resource-type/resource-id/roles
Testo JSON richiesta:
{ "roleId": "full-role-id", "title": "role-title", "description": "role-description", "includedPermissions": [ "permission-1", "permission-2" ], "stage": "launch-stage", "etag": "etag" }
Per inviare la richiesta, espandi una delle seguenti opzioni:
La risposta contiene una definizione abbreviata del ruolo che include il nome del ruolo, i campi che hai aggiornato e un'etichetta che identifica la versione attuale del ruolo.
{ "name": "projects/test-project-1000092/roles/myCompanyAdmin", "title": "My Updated Company Admin", "includedPermissions": [ "storage.buckets.get", "storage.buckets.list" ], "stage": "BETA", "etag": "BwWoyDpAxBc=" }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Disabilitazione di un ruolo personalizzato
Puoi disattivare un ruolo personalizzato modificando la fase di lancio in DISABLED
. Quando un ruolo è disabilitato, le associazioni di ruolo correlate al ruolo vengono disattivate, il che significa che la concessione del ruolo a un utente non ha alcun effetto.
Console
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Fai clic sull'elenco a discesa "Seleziona un progetto" nella parte superiore della pagina.
Seleziona la tua organizzazione o il tuo progetto.
Seleziona un ruolo personalizzato e fai clic su Disattiva.
gcloud CLI
Utilizza il comando gcloud iam roles update
per disabilitare un ruolo personalizzato impostando la fase di lancio su DISABLED
.
Come descritto nella scheda gcloud della sezione Modifica di un ruolo personalizzato esistente, puoi aggiornare un ruolo personalizzato esistente nei due modi seguenti:
- fornendo un file YAML contenente la definizione aggiornata del ruolo
- Mediante i flag per specificare la definizione aggiornata del ruolo
Il modo più semplice per disattivare un ruolo personalizzato esistente consiste nell'utilizzare il flag --stage
e impostarlo su DISABLED
. Esegui uno dei seguenti comandi:
Per disattivare un ruolo a livello di organizzazione, esegui il comando seguente:
gcloud iam roles update role-id --organization=organization-id \ --stage=DISABLED
Per disabilitare un ruolo a livello di progetto, esegui il comando seguente:
gcloud iam roles update role-id --project=project-id \ --stage=DISABLED
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.
Esempi
L'esempio seguente mostra come disattivare un ruolo a livello di organizzazione:
gcloud iam roles update myCompanyAdmin --organization=123456789012 \ --stage=DISABLED
Se il ruolo è stato aggiornato, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkB5NLIQw= includedPermissions: - iam.roles.get - iam.roles.list name: organization/123456789012/roles/myCompanyAdmin stage: DISABLED title: My Company Admin
L'esempio seguente mostra come disabilitare un ruolo a livello di progetto:
gcloud iam roles update myCompanyAdmin --project=my-project-id \ --stage=DISABLED
Se il ruolo è stato aggiornato, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkB5NLIQw= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: DISABLED title: My Company Admin
REST
Il metodo
roles.patch
consente di modificare la fase di lancio di un ruolo personalizzato in DISABLED
,
disattivando il ruolo.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
resource-type
: il tipo di risorsa di cui vuoi gestire i ruoli personalizzati. Utilizza il valoreprojects
oorganizations
.resource-id
: l'ID progetto o l'ID organizzazione di cui vuoi gestire i ruoli personalizzati. Gli ID progetto sono stringhe alfanumeriche comemy-project
. Gli ID organizzazione sono numerici, come123456789012
.role-name
: nome completo del ruolo, inclusi eventuali prefissiorganizations/
,projects/
oroles/
. Ad esempio:organizations/123456789012/roles/myCompanyAdmin
.etag
: identificatore di una versione del ruolo. Includi questo campo per evitare di sovrascrivere altre modifiche dei ruoli.
Metodo e URL HTTP:
PATCH https://iam.googleapis.com/v1/resource/resource-id/roles
Testo JSON richiesta:
{ "roleId": "full-role-id", "stage": DISABLED, "etag": "etag" }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/test-project-1000092/roles/myCompanyAdmin", "stage": "DISABLED", "etag": "BwWoyDpAxBc=" }
C++
Aggiorna il campo stage
del ruolo in DISABLED
.
C#
Aggiorna il campo stage
del ruolo in DISABLED
.
Go
Aggiorna il campo stage
del ruolo in DISABLED
.
Python
Aggiorna il campo stage
del ruolo in DISABLED
.
Ruoli dell'elenco
Puoi elencare tutti i ruoli personalizzati creati nel progetto o nell'organizzazione.
Console
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Tutti i ruoli personalizzati dell'organizzazione o del progetto che hai selezionato sono elencati nella pagina.
gcloud CLI
Utilizza il comando gcloud iam roles list
per elencare i ruoli personalizzati e i ruoli predefiniti per un progetto o un'organizzazione:
Per elencare i ruoli personalizzati a livello di organizzazione, esegui il comando seguente:
gcloud iam roles list --organization=organization-id
Per elencare i ruoli personalizzati a livello di progetto, esegui il comando seguente:
gcloud iam roles list --project=project-id
Ogni valore segnaposto è descritto di seguito:
organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.
Per elencare i ruoli eliminati, puoi anche specificare il flag --show-deleted
.
Esegui il comando seguente per elencare i ruoli predefiniti:
gcloud iam roles list
REST
Il metodo
roles.list
elenca tutti i ruoli personalizzati in un progetto o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
resource-type
: il tipo di risorsa di cui vuoi gestire i ruoli personalizzati. Utilizza il valoreprojects
oorganizations
.resource-id
: l'ID progetto o l'ID organizzazione di cui vuoi gestire i ruoli personalizzati. Gli ID progetto sono stringhe alfanumeriche comemy-project
. Gli ID organizzazione sono numerici, come123456789012
.role-view
: facoltativo. Le informazioni da includere per i ruoli restituiti. Per includere le autorizzazioni dei ruoli, imposta questo campo suFULL
. Per escludere le autorizzazioni dei ruoli, imposta questo campo suBASIC
. Il valore predefinito èBASIC
.page-size
: facoltativo. Il numero di ruoli da includere nella risposta. Il valore predefinito è 300 e il valore massimo è 1000. Se il numero di ruoli è superiore alle dimensioni della pagina, la risposta contiene un token di impaginazione che puoi utilizzare per recuperare la pagina successiva dei risultati.next-page-token
: facoltativo. Il token di impaginazione restituito in una risposta precedente da questo metodo. Se specificato, l'elenco dei ruoli inizierà dove è terminata la richiesta precedente.
Metodo e URL HTTP:
GET https://iam.googleapis.com/v1/resource-type/resource-id/roles?view=role-view&pageSize=page-size&pageToken=next-page-token
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "roles": [ { "name": "projects/my-project/roles/customRole1", "title": "First Custom Role", "description": "Created on: 2020-06-01", "etag": "BwWiPg2fmDE=" }, { "name": "projects/my-project/roles/customRole2", "title": "Second Custom Role", "description": "Created on: 2020-06-07", "etag": "BwWiuX53Wi0=" } ] }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Eliminazione di un ruolo personalizzato
Puoi eliminare qualsiasi ruolo personalizzato nel tuo progetto o nella tua organizzazione.
Console
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Seleziona il ruolo che vuoi eliminare e fai clic su delete Elimina nella parte superiore della pagina.
gcloud CLI
Utilizza il comando gcloud iam roles delete
per eliminare un ruolo personalizzato:
Per eliminare un ruolo personalizzato a livello di organizzazione, esegui il comando seguente:
gcloud iam roles delete role-id --organization=organization-id
Per eliminare un ruolo personalizzato a livello di progetto, esegui il comando seguente:
gcloud iam roles delete role-id --project=project-id
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.
Il ruolo non sarà incluso in gcloud iam roles list
, a meno che non venga incluso il flag --show-deleted
. I ruoli eliminati sono indicati dal blocco deleted: true
in una risposta list
, ad esempio:
--- deleted: true description: My custom role description. etag: BwVkB5NLIQw= name: projects/my-project-id/roles/myCompanyAdmin title: My Company Admin ---
REST
Il metodo
roles.delete
elimina un ruolo personalizzato in un progetto o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
role-name
: nome completo del ruolo, inclusi eventuali prefissiorganizations/
,projects/
oroles/
. Ad esempio:organizations/123456789012/roles/myCompanyAdmin
.
Metodo e URL HTTP:
DELETE https://iam.googleapis.com/v1/full-role-id
Per inviare la richiesta, espandi una delle seguenti opzioni:
La risposta contiene la definizione del ruolo che è stato eliminato.
{ "name": "projects/my-project/roles/myCompanyAdmin", "title": "My Company Admin", "description": "My custom role description.", "includedPermissions": [ "iam.roles.get", "iam.roles.list" ], "etag": "BwWiPg2fmDE=", "deleted": true }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Quando un ruolo viene eliminato, le associazioni di ruoli che vi fanno riferimento rimangono nei criteri di autorizzazione, ma non hanno effetto. Puoi annullare l'eliminazione di un ruolo entro 7 giorni. Durante questo periodo di 7 giorni, la console Google Cloud mostra che il ruolo è stato eliminato. Puoi anche elencare i ruoli eliminati in modo programmatico, ma vengono omessi per impostazione predefinita.
Dopo 7-14 giorni, il ruolo viene pianificato per l'eliminazione permanente. A questo punto, il ruolo non rientra più nel limite di 300 ruoli personalizzati per organizzazione o di 300 ruoli personalizzati per progetto.
Il processo di eliminazione permanente richiede 30 giorni. Durante il periodo di 30 giorni, il ruolo e tutte le associazioni associate vengono rimossi definitivamente e non puoi creare un nuovo ruolo con lo stesso ID ruolo.
Dopo che il ruolo è stato eliminato definitivamente, fino a 44 giorni dopo la richiesta di eliminazione iniziale puoi creare un nuovo ruolo utilizzando lo stesso ID ruolo.
Annullamento dell'eliminazione di un ruolo personalizzato
L'annullamento di un ruolo comporta il ripristino dello stato precedente.
L'eliminazione dei ruoli può essere annullata solo entro 7 giorni. Dopo 7 giorni, il ruolo può essere eliminato definitivamente in qualsiasi momento e tutte le associazioni di ruoli che fanno riferimento al ruolo vengono rimosse.
Console
Nella console Google Cloud, vai alla pagina Roles (Ruoli).
Individua il ruolo da annullare, fai clic sull'icona Altro alla fine della riga e su Annulla eliminazione.
gcloud CLI
Utilizza il comando gcloud iam roles undelete
per annullare l'eliminazione di un ruolo personalizzato:
Per annullare l'eliminazione di un ruolo personalizzato a livello di organizzazione, esegui il comando seguente:
gcloud iam roles undelete role-id --organization=organization-id
Per annullare l'eliminazione di un ruolo personalizzato a livello di progetto, esegui il comando seguente:
gcloud iam roles undelete role-id --project=project-id
Ogni valore segnaposto è descritto di seguito:
role-id
è il nome del ruolo, ad esempiomyCompanyAdmin
.organization-id
è l'ID numerico dell'organizzazione, ad esempio123456789012
.project-id
è il nome del progetto, ad esempiomy-project-id
.
Esempi
L'esempio seguente mostra come annullare l'eliminazione di un ruolo personalizzato a livello di organizzazione:
gcloud iam roles undelete myCompanyAdmin --organization=123456789012
Se l'eliminazione del ruolo è stata annullata correttamente, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkCAx9W6w= includedPermissions: - iam.roles.get - iam.roles.list name: organization/123456789012/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
L'esempio seguente mostra come annullare l'eliminazione di un ruolo personalizzato a livello di progetto:
gcloud iam roles undelete myCompanyAdmin --project=my-project-id
Se l'eliminazione del ruolo è stata annullata correttamente, l'output del comando è simile al seguente:
description: My custom role description. etag: BwVkCAx9W6w= includedPermissions: - iam.roles.get - iam.roles.list name: projects/my-project-id/roles/myCompanyAdmin stage: ALPHA title: My Company Admin
REST
Il metodo
roles.undelete
annulla l'eliminazione di un ruolo personalizzato in un progetto o un'organizzazione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
role-name
: nome completo del ruolo, inclusi eventuali prefissiorganizations/
,projects/
oroles/
. Ad esempio:organizations/123456789012/roles/myCompanyAdmin
.etag
: identificatore di una versione del ruolo. Includi questo campo per evitare di sovrascrivere altre modifiche dei ruoli.
Metodo e URL HTTP:
POST https://iam.googleapis.com/v1/full-role-id:undelete
Testo JSON richiesta:
{ "etag": "etag" }
Per inviare la richiesta, espandi una delle seguenti opzioni:
La risposta contiene la definizione del ruolo di cui è stato annullato l'eliminazione.
{ "name": "projects/my-project/roles/myCompanyAdmin", "title": "My Company Admin", "description": "My custom role description.", "includedPermissions": [ "iam.roles.get", "iam.roles.list" ], "etag": "BwWiPg2fmDE=" }
C++
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C++.
C#
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM C#.
Go
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Go.
Python
Per scoprire come installare e utilizzare la libreria client per IAM, consulta la pagina relativa alle librerie client IAM. Per saperne di più, consulta la documentazione di riferimento dell'API IAM Python.
Passaggi successivi
- Scopri come concedere ruoli alle entità.
- Scopri come utilizzare i suggerimenti per il ruolo per eseguire il downgrade delle autorizzazioni per le entità.
- Scopri di più sulle concessioni di ruoli condizionali, che concedono un ruolo solo se vengono soddisfatte condizioni specifiche.