Questa pagina spiega come ripristinare una versione precedente di una policy di autorizzazione IAM dopo aver apportato modifiche involontarie o eliminazioni accidentali.
Per ripristinare una policy IAM precedente, trova l'ultima setIamPolicy riuscita prima della modifica o dell'eliminazione e utilizzala per ripristinare la policy.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per ripristinare una precedente policy di autorizzazione, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto, nella cartella o nell'organizzazione:
-
Ripristina le policy di autorizzazione con
setIamPolicy:-
Visualizzatore log (
roles/logging.viewer) -
Amministratore dell'organizzazione (
roles/resourcemanager.organizationAdmin) -
Proprietario (
roles/owner)
-
Visualizzatore log (
-
Ripristina le policy di autorizzazione con Cloud Asset Inventory:
Proprietario asset cloud (
roles/cloudasset.owner)
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Quando ripristini le policy di autorizzazione consetIamPolicy, il ruolo Amministratore dell'organizzazione è necessario per le policy di autorizzazione a livello di organizzazione e cartella, mentre il ruolo Proprietario è necessario per le policy di autorizzazione a livello di progetto.
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Ripristina una policy di autorizzazione con l'ultima istanza setIamPolicy riuscita
Per ripristinare una policy di autorizzazione a una versione precedente, puoi esaminare i log di controllo
dell'ultima istanza riuscita di setIamPolicy prima della modifica o
dell'eliminazione e utilizzare le informazioni di quell'istanza per ripristinare la policy. Questo
processo prevede i seguenti passaggi:
- Identifica l'ultima istanza
setIamPolicyriuscita per la policy di autorizzazione e recuperainsertId. - Utilizza
insertIddalla richiestasetIamPolicyper esportare la policy di autorizzazione in formato YAML o JSON. - Modifica il file di output in modo che corrisponda alla precedente policy di autorizzazione funzionante e sovrascrivi la policy di autorizzazione attuale.
Identifica l'ultima istanza riuscita di setIamPolicy e recupera insertId
Per identificare l'ultima istanza riuscita di setIamPolicy e recuperare il
isertId, utilizza la console Google Cloud o gcloud CLI per esaminare i log di controllo.
Console
Nella console Google Cloud , vai alla pagina Esplora log.
Nell'editor di query, inserisci una delle seguenti query. Queste query cercano nei tuoi audit log le voci che contengono
SetIamPolicynel campomethodNamediprotoPayload:Per ottenere i log di tutte le modifiche alla policy di autorizzazione apportate a una risorsa, utilizza la seguente query:
logName="RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity" protoPayload.methodName:SetIamPolicy
Per ottenere i log delle modifiche ai criteri di autorizzazione che coinvolgono un utente o un account di servizio specifico, utilizza la seguente query:
logName="RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity" protoPayload.methodName:SetIamPolicy protoPayload.serviceData.policyDelta.bindingDeltas.member:"EMAIL_ADDRESS"
Sostituisci quanto segue:
RESOURCE_TYPE: il tipo di risorsa per cui stai elencando gli audit log. I valori validi sonoprojects,foldersoorganizations.RESOURCE_ID: l'ID progetto, cartella o organizzazione Google Cloud . Gli ID progetto sono alfanumerici, ad esempiomy-project. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012.EMAIL_ADDRESS: l'indirizzo email dell'utente o delaccount di serviziot, ad esempioexample-service-account@example-project.iam.gserviceaccount.com.
Per eseguire la query, fai clic su Esegui query.
Utilizza il selettore Sequenza temporale per specificare l'intervallo di tempo appropriato per la query. In alternativa, puoi aggiungere un'espressione timestamp direttamente all'editor di query. Per saperne di più, vedi Visualizzare i log per intervallo di tempo.
Copia
insertIddall'ultima istanza riuscita disetIamPolicyprima della modifica o dell'eliminazione.
gcloud
Il comando
gcloud logging read
legge le voci di log.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
RESOURCE_TYPE: Il tipo di risorsa per cui stai elencando i log di controllo. Utilizza il valoreprojects,foldersoorganizations. -
RESOURCE_ID: l'ID Google Cloud del progetto, dell'organizzazione o della cartella. Gli ID progetto sono stringhe alfanumeriche, comemy-project. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012. -
TIME_PERIOD: il periodo di tempo per cui stai elencando i log di controllo. Le voci restituite non sono precedenti a questo valore. Se non specificato, il valore predefinito è1d. Per informazioni sui formati di ora, consulta gcloud topic datetimes. -
RESOURCE_TYPE_SINGULAR: Il tipo di risorsa per cui stai elencando i log di controllo. Utilizza il valoreproject,folderoorganization.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud logging read \ 'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity AND protoPayload.methodName=SetIamPolicy' \ --freshness=TIME_PERIOD \ --RESOURCE_TYPE_SINGULAR=RESOURCE_ID
Windows (PowerShell)
gcloud logging read ` 'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity AND protoPayload.methodName=SetIamPolicy' ` --freshness=TIME_PERIOD ` --RESOURCE_TYPE_SINGULAR=RESOURCE_ID
Windows (cmd.exe)
gcloud logging read ^ 'logName:RESOURCE_TYPE/RESOURCE_ID/logs/cloudaudit.googleapis.com%2Factivity AND protoPayload.methodName=SetIamPolicy' ^ --freshness=TIME_PERIOD ^ --RESOURCE_TYPE_SINGULAR=RESOURCE_ID
Copia insertId dall'ultima istanza riuscita di setIamPolicy prima
della modifica o dell'eliminazione.
Utilizza insertId per esportare la policy di autorizzazione
Utilizza insertId recuperato dall'ultima istanza riuscita di setIamPolicy per eseguire il seguente comando in gcloud CLI per esportare la policy di autorizzazione in formato JSON o YAML. Puoi esportare le policy di autorizzazione
per organizzazioni e progetti.
Livello dell'organizzazione
Il comando
gcloud logging read
legge le voci di log.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
ORGANIZATION_ID: L'organizzazione per cui vuoi visualizzare ed esportare la policy di autorizzazione. -
INSERT_ID: ilinsertIddella richiestasetIamPolicy. -
FORMAT: il formato della risposta. Utilizzajsonoyaml. -
TIME_PERIOD: Il periodo di tempo per cui stai elencando i log di controllo. Le voci restituite non sono precedenti a questo valore. Se non specificato, il valore predefinito è1d. Per informazioni sui formati di ora, consulta gcloud topic datetimes. -
OUTPUT_FILE: il nome e l'estensione del file di output. Ad esempio,previous_policy.jsonoprevious_policy.yaml.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud logging read organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com insertId="INSERT_ID"' --organization=ORGANIZATION_ID --format="FORMAT(protoPayload.request.policy)" --freshness=TIME_PERIOD > OUTPUT_FILE
Windows (PowerShell)
gcloud logging read organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com insertId="INSERT_ID"' --organization=ORGANIZATION_ID --format="FORMAT(protoPayload.request.policy)" --freshness=TIME_PERIOD > OUTPUT_FILE
Windows (cmd.exe)
gcloud logging read organizations/ORGANIZATION_ID/logs/cloudaudit.googleapis.com insertId="INSERT_ID"' --organization=ORGANIZATION_ID --format="FORMAT(protoPayload.request.policy)" --freshness=TIME_PERIOD > OUTPUT_FILE
Livello progetto
Il comando
gcloud logging read
legge le voci di log.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
INSERT_ID: ilinsertIddella richiestasetIamPolicy. -
TIME_PERIOD: Il periodo di tempo per cui stai elencando i log di controllo. Le voci restituite non sono precedenti a questo valore. Se non specificato, il valore predefinito è1d. Per informazioni sui formati di ora, consulta gcloud topic datetimes. -
FORMAT: il formato della risposta. Utilizzajsonoyaml. -
OUTPUT_FILE: il nome del file in cui vuoi salvare l'output, ad esempioprevious_policy.jsonoprevious_policy.yaml.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud logging read \ 'protoPayload.methodName="SetIamPolicy" AND insertId="INSERT_ID"' \ --freshness=TIME_PERIOD \ --format="FORMAT(protoPayload.request.policy)" > OUTPUT_FILE
Windows (PowerShell)
gcloud logging read ` 'protoPayload.methodName="SetIamPolicy" AND insertId="INSERT_ID"' ` --freshness=TIME_PERIOD ` --format="FORMAT(protoPayload.request.policy)" > OUTPUT_FILE
Windows (cmd.exe)
gcloud logging read ^ 'protoPayload.methodName="SetIamPolicy" AND insertId="INSERT_ID"' ^ --freshness=TIME_PERIOD ^ --format="FORMAT(protoPayload.request.policy)" > OUTPUT_FILE
Modificare il file di output e ignorare la policy di autorizzazione corrente
Modifica il file di output nei seguenti modi e sostituisci la policy di autorizzazione corrente.
Modifica il file di output in modo programmatico o utilizzando un editor di testo eliminando le seguenti righe:
--- protoPayload: request: policy:Il file risultante inizia con
auditConfigs:.Recupera la policy di autorizzazione attuale.
gcloud
Il comando
gcloud get-iam-policyrecupera la policy di autorizzazione di un progetto, una cartella o un'organizzazione.Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
RESOURCE_TYPE: Il tipo di risorsa per cui vuoi ottenere la policy di autorizzazione. I valori validi sonoprojects,resource-manager foldersoorganizations. -
RESOURCE_ID: l'ID progetto, cartella o 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. Utilizzajsonoyaml. -
PATH: il percorso di un nuovo file di output per la policy consenti.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Windows (PowerShell)
gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Windows (cmd.exe)
gcloud RESOURCE_TYPE get-iam-policy RESOURCE_ID --format=FORMAT > PATH
Ad esempio, il seguente comando recupera la policy di autorizzazione per il progetto
my-projecte la salva nella tua home directory in formato JSON:gcloud projects get-iam-policy my-project --format json > ~/policy.json
C#
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come ottenere 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 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 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
get-iam-policydell'API Resource Manager recupera la policy di autorizzazione di un progetto, una cartella o un'organizzazione.Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:
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 la policy. Utilizza il valoreprojects,foldersoorganizations.RESOURCE_ID: l'ID Google Cloud del progetto, dell'organizzazione o della 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.
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 (
jsonoyaml).-
Copia il valore di
etagdalla policy di autorizzazione corrente.Sostituisci il valore
etagnel file di output con il valoreetagche hai copiato dal criterio di autorizzazione corrente. Iletagnel file di output deve corrispondere aletagattuale per avviare una nuova richiestasetIamPolicy. Assicurati che la spaziatura dell'etag non sia cambiata nel file di output.Rivedi il file per assicurarti che corrisponda alla precedente policy di autorizzazione funzionante. Potresti valutare la possibilità di creare un nuovo progetto e applicare la policy per assicurarti che funzioni come previsto.
Imposta la policy di autorizzazione in modo che sostituisca quella attuale con quella nel file di output che hai creato.
gcloud
Il comando
gcloud set-iam-policyimposta la policy nella richiesta come nuova policy di autorizzazione per il progetto, la cartella o l'organizzazione.Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
RESOURCE_TYPE: Il tipo di risorsa per cui vuoi impostare la policy di autorizzazione. I valori validi sonoprojects,resource-manager foldersoorganizations. -
RESOURCE_ID: l'ID progetto, cartella o 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.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
Windows (PowerShell)
gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
Windows (cmd.exe)
gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
La risposta contiene la policy di autorizzazione aggiornata.
Ad esempio, il seguente comando imposta la policy di autorizzazione archiviata in
policy.jsoncome policy di autorizzazione per il progettomy-project:gcloud projects set-iam-policy my-project ~/policy.json
C#
Java
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come impostare 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 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
set-iam-policydell'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 sostituzioni seguenti:
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 la policy. Utilizza il valoreprojects,foldersoorganizations.RESOURCE_ID: l'ID Google Cloud del progetto, dell'organizzazione o della 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 il riferimento alle policy.
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.
-
Ripristinare un criterio di autorizzazione con Cloud Asset Inventory
Per ripristinare una policy di autorizzazione a una versione precedente, puoi utilizzare Cloud Asset Inventory per visualizzare la cronologia delle modifiche delle policy di autorizzazione della risorsa e utilizzare queste informazioni per ripristinare la policy. Questo processo prevede i seguenti passaggi:
- Utilizza Cloud Asset Inventory per esaminare la cronologia delle modifiche delle policy di autorizzazione e identificare la policy di autorizzazione che vuoi ripristinare.
- Copia il criterio di autorizzazione e crea un nuovo file in formato JSON.
- Esegui l'override della policy di autorizzazione corrente con quella nel nuovo file.
Esamina la cronologia delle modifiche ai criteri di autorizzazione con Cloud Asset Inventory
Console
Nella console Google Cloud , vai alla pagina Inventario asset.
Fai clic sulla scheda Policy IAM.
Esegui la seguente query nel campo Filtro:
Resource :
RESOURCE_IDSostituisci
RESOURCE_IDcon l' Google Cloud ID progetto, cartella o organizzazione. Gli ID progetto sono alfanumerici, ad esempiomy-project. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012.Per visualizzare la cronologia delle modifiche della policy di autorizzazione della risorsa, fai clic sul nome della risorsa, quindi seleziona la scheda Cronologia delle modifiche.
Per confrontare le modifiche apportate alla norma di autorizzazione per la risorsa, seleziona due record con timestamp diversi dal menu Seleziona un record da confrontare.
gcloud
Il comando
gcloud asset get-history
recupera la cronologia aggiornata delle policy di autorizzazione su una risorsa che si sovrappone a un
intervallo di tempo.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
RESOURCE_TYPE: Il tipo di risorsa per cui stai elencando i log di controllo. Utilizza il valoreproject,folderoorganization. -
RESOURCE_ID: l'ID Google Cloud del progetto, dell'organizzazione o della cartella. Gli ID progetto sono stringhe alfanumeriche, comemy-project. Gli ID cartella e organizzazione sono numerici, ad esempio123456789012. -
ASSET_NAME: un elenco separato da virgole di nomi di risorse formattati per le risorse di cui vuoi visualizzare le cronologie delle policy di autorizzazione. Ad esempio,//cloudresourcemanager.googleapis.com/projects/my-project. Queste risorse possono essere uno qualsiasi dei tipi di risorse che accettano le policy di autorizzazione. -
START_TIME: l'inizio dell'intervallo di tempo. L'intervallo di tempo massimo è di 7 giorni. Il valore deve essere l'ora corrente o un'ora non più di 35 giorni nel passato. Per informazioni sui formati di ora, consulta gcloud topic datetimes. -
END_TIME: (Facoltativo) Il punto finale dell'intervallo di tempo. L'intervallo di tempo massimo è di 7 giorni. Il valore deve essere l'ora corrente o un'ora non più di 35 giorni nel passato. Se non viene specificata, l'ora di fine viene considerata l'ora attuale. Per informazioni sui formati di ora, consulta gcloud topic datetimes.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud asset get-history \ --RESOURCE_TYPE=RESOURCE_ID \ --asset-names=ASSET_NAME_1,ASSET_NAME_2,... \ --content-type=iam-policy \ --start-time=START_TIME \ --end-time=END_TIME
Windows (PowerShell)
gcloud asset get-history ` --RESOURCE_TYPE=RESOURCE_ID ` --asset-names=ASSET_NAME_1,ASSET_NAME_2,... ` --content-type=iam-policy ` --start-time=START_TIME ` --end-time=END_TIME
Windows (cmd.exe)
gcloud asset get-history ^ --RESOURCE_TYPE=RESOURCE_ID ^ --asset-names=ASSET_NAME_1,ASSET_NAME_2,... ^ --content-type=iam-policy ^ --start-time=START_TIME ^ --end-time=END_TIME
La risposta contiene la cronologia aggiornata delle policy di autorizzazione.
Crea un nuovo file di policy di autorizzazione
Dopo aver esaminato la cronologia delle norme di autorizzazione e identificato la norma di autorizzazione che vuoi ripristinare, completa i seguenti passaggi.
Copia il criterio di autorizzazione che vuoi ripristinare a partire dalla riga
"bindings"fino alla riga"etag".Incolla la policy di autorizzazione che hai copiato in un nuovo file e utilizza le parentesi graffe (
{}) per racchiudere la policy. Ad esempio, la policy di autorizzazione potrebbe avere il seguente aspetto:{ "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-service-account@my-project.iam.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": "BwWWja0YfJA=", }Salva il file in formato JSON. Ad esempio, potresti chiamare il nuovo file
previous_iam_policy.json.
Imposta la nuova policy di autorizzazione
Imposta la policy di autorizzazione in modo che sostituisca quella attuale con quella nel file di output che hai creato.
gcloud
Il comando
gcloud set-iam-policy
imposta la policy nella richiesta come nuova policy di autorizzazione per il progetto, la cartella o l'organizzazione.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
-
RESOURCE_TYPE: Il tipo di risorsa per cui vuoi impostare la policy di autorizzazione. I valori validi sonoprojects,resource-manager foldersoorganizations. -
RESOURCE_ID: l'ID progetto, cartella o 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.
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
Windows (PowerShell)
gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
Windows (cmd.exe)
gcloud RESOURCE_TYPE set-iam-policy RESOURCE_ID PATH
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 progetto my-project:
gcloud projects set-iam-policy my-project ~/policy.json
C#
Java
Per eseguire l'autenticazione in Resource Manager, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Prima di iniziare.
Per scoprire come installare e utilizzare la libreria client per Resource Manager, consulta Librerie client di Resource Manager.
L'esempio seguente mostra come impostare 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 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
set-iam-policy
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 sostituzioni seguenti:
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 la policy. Utilizza il valoreprojects,foldersoorganizations.RESOURCE_ID: l'ID Google Cloud del progetto, dell'organizzazione o della 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 il riferimento alle policy.
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.