Analizza i criteri di autorizzazione

Questa pagina mostra come utilizzare Policy Analyzer per le policy di autorizzazione per scoprire quali entità (utenti, service account, gruppi e domini) hanno un determinato accesso a determinate risorseGoogle Cloud .

Gli esempi in questa pagina mostrano come eseguire una query di analisi delle norme e visualizzare immediatamente i risultati. Se vuoi esportare i risultati per un'analisi più approfondita, puoi utilizzare AnalyzeIamPolicyLongrunning per scrivere i risultati della query in BigQuery o Cloud Storage.

Prima di iniziare

Ruoli e autorizzazioni richiesti

Per analizzare le policy di autorizzazione sono necessari i seguenti ruoli e autorizzazioni.

Ruoli IAM richiesti

Per ottenere le autorizzazioni necessarie per analizzare una policy di autorizzazione, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto, nella cartella o nell'organizzazione a cui limiterai la query:

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per analizzare una policy di autorizzazione. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per analizzare una policy di autorizzazione sono necessarie le seguenti autorizzazioni:

  • cloudasset.assets.analyzeIamPolicy
  • cloudasset.assets.searchAllResources
  • cloudasset.assets.searchAllIamPolicies
  • Per analizzare i criteri con ruoli IAM personalizzati: iam.roles.get
  • Per utilizzare Google Cloud CLI per analizzare i criteri: serviceusage.services.use

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Autorizzazioni Google Workspace richieste

Se vuoi espandere i gruppi nei risultati della query per vedere se un principal dispone di determinati ruoli o autorizzazioni in seguito alla sua appartenenza a un gruppo Google Workspace, devi disporre dell'autorizzazione Google Workspace groups.read. Questa autorizzazione è contenuta nel ruolo Amministratore lettore di Gruppi e in ruoli più potenti come Amministratore gruppi o Super amministratore. Per scoprire come concedere questi ruoli, vedi Assegnare ruoli di amministratore specifici.

Determinare quali entità possono accedere a una risorsa

Puoi utilizzare Policy Analyzer per verificare quali entità dispongono di determinati ruoli o autorizzazioni per una risorsa specifica nel tuo progetto, nella tua cartella o nella tua organizzazione. Per ottenere queste informazioni, crea una query che includa la risorsa per cui vuoi analizzare l'accesso e uno o più ruoli o autorizzazioni da controllare.

Console

  1. Nella console Google Cloud , vai alla pagina Analizzatore delle policy.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza norme, individua il riquadro etichettato Query personalizzata e fai clic su Crea query personalizzata in questo riquadro.

  3. Nel campo Seleziona ambito query, seleziona il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Analizzatore criteri analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per qualsiasi risorsa all'interno del progetto, della cartella o dell'organizzazione.

  4. Scegli la risorsa da controllare e il ruolo o l'autorizzazione da verificare:

    1. Nel campo Parametro 1, seleziona Risorsa dal menu a discesa.
    2. Nel campo Risorsa, inserisci il nome risorsa completo della risorsa per cui vuoi analizzare l'accesso. Se non conosci il nome completo della risorsa, inizia a digitare il nome visualizzato della risorsa, quindi selezionala dall'elenco delle risorse fornite.
    3. Fai clic su Aggiungi selettore.
    4. Nel campo Parametro 2, seleziona Ruolo o Autorizzazione.
    5. Nel campo Seleziona un ruolo o Seleziona un'autorizzazione, seleziona il ruolo o l'autorizzazione che vuoi controllare.
    6. (Facoltativo) Per verificare la presenza di altri ruoli e autorizzazioni, continua ad aggiungere i selettori Ruolo e Autorizzazione finché non sono elencati tutti i ruoli e le autorizzazioni che vuoi controllare.
  5. (Facoltativo) Fai clic su Continua, poi seleziona le opzioni avanzate che vuoi attivare per questa query.

  6. Nel riquadro Query personalizzata, fai clic su Analizza > Esegui query. La pagina del report mostra i parametri di ricerca inseriti e una tabella dei risultati di tutte le entità con i ruoli o le autorizzazioni specificati nella risorsa specificata.

    Le query di analisi delle policy nella console Google Cloud vengono eseguite per un massimo di un minuto. Dopo un minuto, la console Google Cloud interrompe la query e mostra tutti i risultati disponibili. Se la query non è stata completata in questo periodo di tempo, la console Google Cloud mostra un banner che indica che i risultati sono incompleti. Per ottenere più risultati per queste query, esporta i risultati in BigQuery.

gcloud

Prima di utilizzare i dati dei comandi riportati di seguito, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • FULL_RESOURCE_NAME: Il nome completo della risorsa per cui vuoi analizzare l'accesso. Per un elenco dei formati completi dei nomi delle risorse, consulta Formato del nome della risorsa.
  • PERMISSIONS: un elenco separato da virgole delle autorizzazioni che vuoi controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.

Esegui il comando gcloud asset analyze-iam-policy:

Linux, macOS o Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --full-resource-name=FULL_RESOURCE_NAME \
    --permissions='PERMISSIONS'

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --full-resource-name=FULL_RESOURCE_NAME `
    --permissions='PERMISSIONS'

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --full-resource-name=FULL_RESOURCE_NAME ^
    --permissions='PERMISSIONS'

Ricevi una risposta YAML con i risultati dell'analisi. Ogni risultato dell'analisi elenca un insieme di accessi, identità e risorse pertinenti alla query, seguito dal binding del ruolo IAM correlato. Se l'associazione di ruolo è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non può essere valutata, il risultato è CONDITIONAL.

I principal che dispongono di una delle autorizzazioni specificate sulla risorsa specificata sono elencati nei campi identities della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo identities evidenziato.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyze-iam-policy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

REST

Per determinare quali entità hanno determinate autorizzazioni su una risorsa, utilizza il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • FULL_RESOURCE_NAME: Il nome completo della risorsa per cui vuoi analizzare l'accesso. Per un elenco dei formati completi dei nomi delle risorse, consulta Formato del nome della risorsa.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.

Metodo HTTP e URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

Corpo JSON della richiesta:

{
  "analysisQuery": {
    "resourceSelector": {
      "fullResourceName": "FULL_RESOURCE_NAME"
    },
    "accessSelector": {
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione di ruoli IAM pertinente, quindi elenca la risorsa, gli accessi e le entità in quell'associazione. Se l'associazione di ruolo è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non è stata valutata, il risultato viene visualizzato come CONDITIONAL.

I principal che dispongono di una delle autorizzazioni specificate sulla risorsa specificata sono elencati nei campi identities della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo identities evidenziato.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "permission": "compute.instances.start"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyzeIamPolicy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determinare quali entità dispongono di determinati ruoli o autorizzazioni

Puoi utilizzare Policy Analyzer per controllare quali entità hanno ruoli o autorizzazioni specifici per qualsiasi risorsa Google Cloud della tua organizzazione. Per ottenere queste informazioni, crea una query che includa uno o più ruoli o autorizzazioni da controllare, ma non specifica una risorsa.

Console

  1. Nella console Google Cloud , vai alla pagina Analizzatore delle policy.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza norme, individua il riquadro etichettato Query personalizzata e fai clic su Crea query personalizzata in questo riquadro.

  3. Nel campo Seleziona ambito query, seleziona il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Analizzatore criteri analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per qualsiasi risorsa all'interno del progetto, della cartella o dell'organizzazione.

  4. Nel campo Parametro 1, seleziona Ruolo o Autorizzazione.

  5. Nel campo Seleziona un ruolo o Seleziona un'autorizzazione, seleziona il ruolo o l'autorizzazione che vuoi controllare.

  6. (Facoltativo) Per verificare la presenza di altri ruoli e autorizzazioni:

    1. Fai clic su Aggiungi selettore.
    2. Nel campo Parametro 2, seleziona Ruolo o Autorizzazione.
    3. Nel campo Seleziona un ruolo o Seleziona un'autorizzazione, seleziona il ruolo o l'autorizzazione che vuoi controllare.
    4. Continua ad aggiungere i selettori Ruolo e Autorizzazione finché non vengono elencati tutti i ruoli e le autorizzazioni che vuoi controllare.
  7. (Facoltativo) Fai clic su Continua, poi seleziona le opzioni avanzate che vuoi attivare per questa query.

  8. Nel riquadro Query personalizzata, fai clic su Analizza > Esegui query. La pagina del report mostra i parametri di ricerca che hai inserito e una tabella dei risultati di tutte le entità con i ruoli o le autorizzazioni specificati per qualsiasi risorsa in ambito.

    Le query di analisi delle policy nella console Google Cloud vengono eseguite per un massimo di un minuto. Dopo un minuto, la console Google Cloud interrompe la query e mostra tutti i risultati disponibili. Se la query non è stata completata in questo periodo di tempo, la console Google Cloud mostra un banner che indica che i risultati sono incompleti. Per ottenere più risultati per queste query, esporta i risultati in BigQuery.

gcloud

Prima di utilizzare i dati dei comandi riportati di seguito, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • ROLES: un elenco separato da virgole dei ruoli da controllare, ad esempio roles/compute.admin,roles/compute.imageUser. Se elenchi più ruoli, Policy Analyzer verificherà la presenza di uno qualsiasi dei ruoli elencati.
  • PERMISSIONS: un elenco separato da virgole delle autorizzazioni che vuoi controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.

Esegui il comando gcloud asset analyze-iam-policy:

Linux, macOS o Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --roles='ROLES' \
    --permissions='PERMISSIONS'

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --roles='ROLES' `
    --permissions='PERMISSIONS'

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --roles='ROLES' ^
    --permissions='PERMISSIONS'

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione di ruoli IAM pertinente, quindi elenca la risorsa, gli accessi e le entità in quell'associazione. Se l'associazione di ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non è stata valutata, il risultato viene visualizzato come CONDITIONAL.

Le entità che dispongono di uno dei ruoli o delle autorizzazioni specificati sono elencate nei campi identities della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo identities evidenziato.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  - role: roles/compute.admin
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyze-iam-policy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

REST

Per determinare quali entità dispongono di determinati ruoli o autorizzazioni, utilizza il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • ROLE_1, ROLE_2... ROLE_N: i ruoli che vuoi controllare, ad esempio roles/compute.admin. Se elenchi più ruoli, Policy Analyzer verificherà la presenza di uno qualsiasi dei ruoli elencati.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.

Metodo HTTP e URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

Corpo JSON della richiesta:

{
  "analysisQuery": {
    "accessSelector": {
      "roles": [
        "ROLE_1",
        "ROLE_2",
        "ROLE_N"
      ],
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione di ruoli IAM pertinente, quindi elenca la risorsa, gli accessi e le entità in quell'associazione. Se l'associazione di ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non è stata valutata, il risultato viene visualizzato come CONDITIONAL.

Le entità che dispongono di uno dei ruoli o delle autorizzazioni specificati sono elencate nei campi identities della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo identities evidenziato.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "role": "roles/compute.admin"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyzeIamPolicy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determinare l'accesso di un'entità a una risorsa

Puoi utilizzare Policy Analyzer per controllare quali ruoli o autorizzazioni ha un'entità su una risorsa nella tua organizzazione. Per ottenere queste informazioni, crea una query che includa l'entità di cui vuoi analizzare l'accesso e la risorsa per cui vuoi analizzare l'accesso.

Console

  1. Nella console Google Cloud , vai alla pagina Analizzatore delle policy.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza norme, individua il riquadro etichettato Query personalizzata e fai clic su Crea query personalizzata in questo riquadro.

  3. Nel campo Seleziona ambito query, seleziona il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Analizzatore criteri analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per qualsiasi risorsa all'interno del progetto, della cartella o dell'organizzazione.

  4. Scegli la risorsa e l'entità da controllare:

    1. Nel campo Parametro 1, seleziona Risorsa dal menu a discesa.
    2. Nel campo Risorsa, inserisci il nome risorsa completo della risorsa per cui vuoi analizzare l'accesso. Se non conosci il nome completo della risorsa, inizia a digitare il nome visualizzato della risorsa, quindi selezionala dall'elenco delle risorse fornite.
    3. Fai clic su Aggiungi selettore.
    4. Nel campo Parametro 2, seleziona Principale dal menu a discesa.
    5. Nel campo Entità, inizia a digitare il nome di un utente, di un service account o di un gruppo. Quindi, seleziona l'utente, il account di servizio o il gruppo di cui vuoi analizzare l'accesso dall'elenco delle entità fornite.
  5. (Facoltativo) Fai clic su Continua, poi seleziona le opzioni avanzate che vuoi attivare per questa query.

  6. Nel riquadro Query personalizzata, fai clic su Analizza > Esegui query. La pagina del report mostra i parametri di ricerca che hai inserito e una tabella dei risultati di tutti i ruoli che l'entità specificata ha sulla risorsa specificata.

    Le query di analisi delle policy nella console Google Cloud vengono eseguite per un massimo di un minuto. Dopo un minuto, la console Google Cloud interrompe la query e mostra tutti i risultati disponibili. Se la query non è stata completata in questo periodo di tempo, la console Google Cloud mostra un banner che indica che i risultati sono incompleti. Per ottenere più risultati per queste query, esporta i risultati in BigQuery.

gcloud

Prima di utilizzare i dati dei comandi riportati di seguito, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • FULL_RESOURCE_NAME: Il nome completo della risorsa per cui vuoi analizzare l'accesso. Per un elenco dei formati completi dei nomi delle risorse, consulta Formato del nome della risorsa.
  • PRINCIPAL: l'entità di cui vuoi analizzare l'accesso, nel formato PRINCIPAL_TYPE:ID, ad esempio user:my-user@example.com. Per un elenco completo dei tipi di entità, vedi Identificatori delle entità.

Esegui il comando gcloud asset analyze-iam-policy:

Linux, macOS o Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --full-resource-name=FULL_RESOURCE_NAME \
    --identity=PRINCIPAL

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --full-resource-name=FULL_RESOURCE_NAME `
    --identity=PRINCIPAL

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --full-resource-name=FULL_RESOURCE_NAME ^
    --identity=PRINCIPAL

Ricevi una risposta YAML con i risultati dell'analisi. Ogni risultato dell'analisi elenca un insieme di accessi, identità e risorse pertinenti alla query, seguito dal binding del ruolo IAM correlato. Se l'associazione di ruolo è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non può essere valutata, il risultato è CONDITIONAL.

I ruoli assegnati all'entità nella risorsa specificata sono elencati nei campi accesses della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo accesses evidenziato.

...
---
ACLs:
- accesses:
  - roles/iam.serviceAccountUser
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    members:
    - user: my-user@example.com
    role: roles/iam.serviceAccountUser
---
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyze-iam-policy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

REST

Per determinare l'accesso di un'entità a una risorsa, utilizza il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • FULL_RESOURCE_NAME: Il nome completo della risorsa per cui vuoi analizzare l'accesso. Per un elenco dei formati completi dei nomi delle risorse, consulta Formato del nome della risorsa.
  • PRINCIPAL: l'entità di cui vuoi analizzare l'accesso, nel formato PRINCIPAL_TYPE:ID, ad esempio user:my-user@example.com. Per un elenco completo dei tipi di entità, vedi Identificatori delle entità.

Metodo HTTP e URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

Corpo JSON della richiesta:

{
  "analysisQuery": {
    "resourceSelector": {
      "fullResourceName": "FULL_RESOURCE_NAME"
    },
    "identitySelector": {
      "identity": "PRINCIPAL"
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione di ruoli IAM pertinente, quindi elenca la risorsa, gli accessi e le entità in quell'associazione. Se l'associazione di ruolo è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non è stata valutata, il risultato viene visualizzato come CONDITIONAL.

I ruoli assegnati all'entità nella risorsa specificata sono elencati nei campi accesses della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo accesses evidenziato.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/iam.serviceAccountUser",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "roles": "iam.serviceAccountUser"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyzeIamPolicy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determinare a quali risorse può accedere un'entità

Puoi utilizzare Policy Analyzer per controllare quali risorse all'interno della tua organizzazione hanno determinati ruoli o autorizzazioni per un'entità. Per ottenere queste informazioni, crea una query che includa l'entità di cui vuoi analizzare l'accesso e una o più autorizzazioni o ruoli che vuoi controllare.

Console

  1. Nella console Google Cloud , vai alla pagina Analizzatore delle policy.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza norme, individua il riquadro etichettato Query personalizzata e fai clic su Crea query personalizzata in questo riquadro.

  3. Nel campo Seleziona ambito query, seleziona il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Analizzatore criteri analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per qualsiasi risorsa all'interno del progetto, della cartella o dell'organizzazione.

  4. Scegli l'entità da controllare e il ruolo o l'autorizzazione da verificare:

    1. Nel campo Parametro 1, seleziona Principale dal menu a discesa.
    2. Nel campo Entità, inizia a digitare il nome di un utente, di un service account o di un gruppo. Quindi, seleziona l'utente, il account di servizio o il gruppo di cui vuoi analizzare l'accesso dall'elenco delle entità fornite.
    3. Fai clic su Aggiungi selettore.
    4. Nel campo Parametro 2, seleziona Ruolo o Autorizzazione.
    5. Nel campo Seleziona un ruolo o Seleziona un'autorizzazione, seleziona il ruolo o l'autorizzazione che vuoi controllare.
    6. (Facoltativo) Per verificare la presenza di ruoli e autorizzazioni aggiuntivi, continua ad aggiungere selettori Ruolo e Autorizzazione finché non sono elencati tutti i ruoli e le autorizzazioni che vuoi controllare.
  5. (Facoltativo) Fai clic su Continua, poi seleziona le opzioni avanzate che vuoi attivare per questa query.

  6. Nel riquadro Query personalizzata, fai clic su Analizza > Esegui query. La pagina del report mostra i parametri di ricerca inseriti e una tabella dei risultati di tutte le risorse su cui l'entità specificata dispone dei ruoli o delle autorizzazioni specificati.

    Le query di analisi delle policy nella console Google Cloud vengono eseguite per un massimo di un minuto. Dopo un minuto, la console Google Cloud interrompe la query e mostra tutti i risultati disponibili. Se la query non è stata completata in questo periodo di tempo, la console Google Cloud mostra un banner che indica che i risultati sono incompleti. Per ottenere più risultati per queste query, esporta i risultati in BigQuery.

gcloud

Prima di utilizzare i dati dei comandi riportati di seguito, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • PRINCIPAL: l'entità di cui vuoi analizzare l'accesso, nel formato PRINCIPAL_TYPE:ID, ad esempio user:my-user@example.com. Per un elenco completo dei tipi di entità, vedi Identificatori delle entità.
  • PERMISSIONS: un elenco separato da virgole delle autorizzazioni che vuoi controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.

Esegui il comando gcloud asset analyze-iam-policy:

Linux, macOS o Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --identity=PRINCIPAL \
    --permissions='PERMISSIONS'

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --identity=PRINCIPAL `
    --permissions='PERMISSIONS'

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --identity=PRINCIPAL ^
    --permissions='PERMISSIONS'

Ricevi una risposta YAML con i risultati dell'analisi. Ogni risultato dell'analisi elenca un insieme di accessi, identità e risorse pertinenti alla query, seguito dal binding del ruolo IAM correlato. Se l'associazione di ruolo è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non può essere valutata, il risultato è CONDITIONAL.

Le risorse su cui l'entità specificata dispone di una delle autorizzazioni specificate sono elencate nei campi resources della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo resources evidenziato.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //compute.googleapis.com/projects/my-project/global/images/my-image
policy:
  attachedResource: //compute.googleapis.com/projects/my-project/global/images/my-image
  binding:
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyze-iam-policy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

REST

Per determinare a quali risorse può accedere un'entità, utilizza il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • PRINCIPAL: l'entità di cui vuoi analizzare l'accesso, nel formato PRINCIPAL_TYPE:ID, ad esempio user:my-user@example.com. Per un elenco completo dei tipi di entità, vedi Identificatori delle entità.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.

Metodo HTTP e URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

Corpo JSON della richiesta:

{
  "analysisQuery": {
    "identitySelector": {
      "identity": "PRINCIPAL"
    },
    "accessSelector": {
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione di ruoli IAM pertinente, quindi elenca la risorsa, gli accessi e le entità in quell'associazione. Se l'associazione di ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non è stata valutata, il risultato viene visualizzato come CONDITIONAL.

Le risorse su cui l'entità specificata dispone di una delle autorizzazioni specificate sono elencate nei campi resources della risposta. L'esempio seguente mostra un singolo risultato dell'analisi con il campo resources evidenziato.

...
{
  "attachedResourceFullName": "//compute.googleapis.com/projects/my-project/global/images/my-image",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ]
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//compute.googleapis.com/projects/my-project/global/images/my-image"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "permission": "compute.instances.start"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyzeIamPolicy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determinare l'accesso a un orario specifico

Se fornito un contesto sufficiente, Policy Analyzer può analizzare le associazioni di ruoli condizionali IAM che concedono l'accesso solo in momenti specifici. Queste condizioni sono chiamate condizioni di data/ora. Affinché Policy Analyzer possa analizzare con precisione le associazioni di ruoli con condizioni di data/ora, devi definire l'ora di accesso nella richiesta.

Analizzatore criteri può anche analizzare le condizioni delle risorse senza ulteriori input utente'utente. Per ulteriori informazioni su come Policy Analyzer funziona con le condizioni, consulta Accesso condizionale.

gcloud

Prima di utilizzare i dati dei comandi riportati di seguito, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • PERMISSIONS: Facoltativo. Un elenco separato da virgole delle autorizzazioni da controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.
  • FULL_RESOURCE_NAME: (Facoltativo). Il nome risorsa completo della risorsa per cui vuoi analizzare l'accesso. Per un elenco dei formati dei nomi delle risorse completi, vedi Formato del nome della risorsa.
  • PERMISSIONS: Facoltativo. Un elenco separato da virgole delle autorizzazioni da controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer verificherà la presenza di una qualsiasi delle autorizzazioni elencate.
  • ACCESS_TIME: l'ora che vuoi controllare. Questo orario deve essere futuro. Utilizza un timestamp in formato RFC 3339, ad esempio 2099-02-01T00:00:00Z.

Esegui il comando gcloud asset analyze-iam-policy:

Linux, macOS o Cloud Shell

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID \
    --identity=PRINCIPAL \
    --full-resource-name=FULL_RESOURCE_NAME \
    --permissions='PERMISSIONS' \
    --access-time=ACCESS_TIME

Windows (PowerShell)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID `
    --identity=PRINCIPAL `
    --full-resource-name=FULL_RESOURCE_NAME `
    --permissions='PERMISSIONS' `
    --access-time=ACCESS_TIME

Windows (cmd.exe)

gcloud asset analyze-iam-policy --RESOURCE_TYPE=RESOURCE_ID ^
    --identity=PRINCIPAL ^
    --full-resource-name=FULL_RESOURCE_NAME ^
    --permissions='PERMISSIONS' ^
    --access-time=ACCESS_TIME

Ricevi una risposta YAML con i risultati dell'analisi. Ogni risultato dell'analisi elenca un insieme di accessi, identità e risorse pertinenti alla query, seguito dal binding del ruolo IAM correlato. Se l'associazione di ruolo è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non può essere valutata, il risultato è CONDITIONAL.

Se includi l'ora di accesso nella richiesta, Policy Analyzer può valutare le condizioni di data/ora. Se la condizione restituisce il valore false, il ruolo non viene incluso nella risposta. Se la condizione restituisce il valore true, il risultato della valutazione della condizione viene elencato come TRUE.

...
---
ACLs:
- accesses:
  - permission: compute.instances.get
  - permission: compute.instances.start
  conditionEvaluationValue: 'TRUE'
  identities:
  - name: user:my-user@example.com
  resources:
  - fullResourceName: //cloudresourcemanager.googleapis.com/projects/my-project
policy:
  attachedResource: //cloudresourcemanager.googleapis.com/projects/my-project
  binding:
    condition:
      expression: request.time.getHours("America/Los_Angeles") >= 5
      title: No access before 5am PST
    members:
    - user: my-user@example.com
    role: roles/compute.admin
---
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyze-iam-policy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

REST

Per determinare quali entità avranno determinate autorizzazioni su una risorsa in un momento specifico, utilizza il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del Google Cloud progetto, della cartella o dell'organizzazione a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM collegati a questa risorsa e ai relativi discendenti. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: facoltativo. Le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Analizzatore criteri verificherà la presenza di una qualsiasi delle autorizzazioni elencate.
  • FULL_RESOURCE_NAME: (Facoltativo). Il nome risorsa completo della risorsa per cui vuoi analizzare l'accesso. Per un elenco dei formati dei nomi delle risorse completi, vedi Formato del nome della risorsa.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: facoltativo. Le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Analizzatore criteri verificherà la presenza di una qualsiasi delle autorizzazioni elencate.
  • ACCESS_TIME: l'ora che vuoi controllare. Questo orario deve essere futuro. Utilizza un timestamp in formato RFC 3339, ad esempio 2099-02-01T00:00:00Z.

Metodo HTTP e URL:

POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicy

Corpo JSON della richiesta:

{
  "analysisQuery": {
    "identitySelector": {
      "identity": "PRINCIPAL"
    },
    "resourceSelector": {
      "fullResourceName": "FULL_RESOURCE_NAME"
    },
    "accessSelector": {
      "permissions": [
        "PERMISSION_1",
        "PERMISSION_2",
        "PERMISSION_N"
      ]
    },
    "conditionContext": {
      "accessTime": "ACCESS_TIME"
    }
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione di ruoli IAM pertinente, quindi elenca la risorsa, gli accessi e le entità in quell'associazione. Se l'associazione di ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se la condizione non è stata valutata, il risultato viene visualizzato come CONDITIONAL.

Se includi l'ora di accesso nella richiesta, Policy Analyzer può valutare le condizioni di data/ora. Se la condizione restituisce il valore false, il ruolo non viene incluso nella risposta. Se la condizione restituisce il valore true, il valore di valutazione della condizione nella risposta dell'analisi è TRUE.

...
{
  "attachedResourceFullName": "//cloudresourcemanager.googleapis.com/projects/my-project",
  "iamBinding": {
    "role": "roles/compute.admin",
    "members": [
      "user:my-user@example.com"
    ],
    "condition": {
      "expression": "request.time.getHours(\"America/Los_Angeles\") \u003e= 5",
      "title": "No access before 5am PST"
    }
  },
  "accessControlLists": [
    {
      "resources": [
        {
          "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
        }
      ],
      "accesses": [
        {
          "permission": "compute.instances.get"
        },
        {
          "permission": "compute.instances.start"
        }
      ],
      "conditionEvaluation": {
        "evaluationValue": "TRUE"
      }
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Se la richiesta scade prima del completamento della query, viene visualizzato un errore DEADLINE_EXCEEDED. Per ottenere più risultati per queste query, scrivi i risultati in BigQuery o Cloud Storage utilizzando la versione a lunga esecuzione di analyzeIamPolicy. Per istruzioni, vedi Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Attiva opzioni

Puoi attivare le seguenti opzioni per ricevere risultati delle query più dettagliati.

Console

Opzione Descrizione
Elenco delle risorse contenute in quelle che soddisfano le policy della query Se abiliti questa opzione, l'elenco dei risultati della query mostra fino a 1000 risorse discendenti pertinenti per le risorse padre (progetti, cartelle e organizzazioni) nei risultati della query.
Elenca singoli utenti all'interno dei gruppi

Se attivi questa opzione, tutti i gruppi nei risultati della query vengono espansi in singoli membri. Se disponi di autorizzazioni sufficienti per i gruppi, verranno espansi anche i gruppi nidificati. Questa espansione è limitata a 1000 membri per gruppo.

Questa opzione è disponibile solo se non specifichi un principal nella query.

Elenca autorizzazioni all'interno dei ruoli

Se attivi questa opzione, l'elenco dei risultati della query mostra tutte le autorizzazioni all'interno di ogni ruolo, oltre al ruolo stesso.

Questa opzione è disponibile solo se non specifichi autorizzazioni o ruoli nella query.

gcloud

Questa sezione descrive diversi flag comuni che puoi aggiungere quando utilizzi gcloud CLI per analizzare i criteri di autorizzazione. Per un elenco completo delle opzioni, consulta Flag facoltativi.

Flag Descrizione
--analyze-service-account-impersonation

Se questa opzione è attivata, l'Analizzatore policy esegue query di analisi aggiuntive per determinare chi può impersonare i service account che hanno l'accesso specificato alle risorse specificate. L'Analizzatore policy esegue una query per ogni account di servizio nei risultati della query. Queste query analizzano chi dispone di una delle seguenti autorizzazioni per ilaccount di serviziont:

  • iam.serviceAccounts.actAs
  • iam.serviceAccounts.getAccessToken
  • iam.serviceAccounts.getOpenIdToken
  • iam.serviceAccounts.implicitDelegation
  • iam.serviceAccounts.signBlob
  • iam.serviceAccounts.signJwt

Si tratta di un'operazione molto costosa, perché esegue automaticamente molte query. Ti consigliamo vivamente di esportare in BigQuery o esportare in Cloud Storage utilizzando analyze-iam-policy-longrunning anziché analyze-iam-policy.

--expand-groups

Se attivi questa opzione, tutti i gruppi nei risultati della query vengono espansi in singoli membri. Se disponi di autorizzazioni sufficienti per i gruppi, verranno espansi anche i gruppi nidificati. Questa espansione è limitata a 1000 membri per gruppo.

Questa opzione è efficace solo se non specifichi un principal nella query.

--expand-resources Se abiliti questa opzione, l'elenco dei risultati della query mostra fino a 1000 risorse discendenti pertinenti per le risorse padre (progetti, cartelle e organizzazioni) nei risultati della query.
--expand-roles

Se attivi questa opzione, l'elenco dei risultati della query mostra tutte le autorizzazioni all'interno di ogni ruolo, oltre al ruolo stesso.

Questa opzione è disponibile solo se non specifichi autorizzazioni o ruoli nella query.

--output-group-edges Se attivi questa opzione, i risultati della query restituiscono le relazioni di appartenenza pertinenti tra i gruppi.
--output-resource-edges Se attivi questa opzione, i risultati della query restituiscono le relazioni principale/secondario pertinenti tra le risorse.

REST

Per attivare le opzioni, aggiungi prima un campo options alla query di analisi. Ad esempio:

{
  "analysisQuery": {
    "resourceSelector": {
      "fullResourceName": "//cloudresourcemanager.googleapis.com/projects/my-project"
    },
    "accessSelector": {
      "permissions": [
        "iam.roles.get",
        "iam.roles.list"
      ]
   },
   "options": {
     OPTIONS
   }
  }
}

Sostituisci OPTIONS con le opzioni che vuoi attivare, nel formato "OPTION": true. La tabella seguente descrive le opzioni disponibili:

Opzione Descrizione
analyzeServiceAccountImpersonation

Se questa opzione è attivata, l'Analizzatore policy esegue query di analisi aggiuntive per determinare chi può impersonare i service account che hanno l'accesso specificato alle risorse specificate. L'Analizzatore policy esegue una query per ogni account di servizio nei risultati della query. Queste query analizzano chi dispone di una delle seguenti autorizzazioni per ilaccount di serviziont:

  • iam.serviceAccounts.actAs
  • iam.serviceAccounts.getAccessToken
  • iam.serviceAccounts.getOpenIdToken
  • iam.serviceAccounts.implicitDelegation
  • iam.serviceAccounts.signBlob
  • iam.serviceAccounts.signJwt

Si tratta di un'operazione molto costosa, perché esegue automaticamente molte query. Ti consigliamo vivamente di esportare in BigQuery o esportare in Cloud Storage utilizzando AnalyzeIamPolicyLongrunning anziché AnalyzeIamPolicy.

expandGroups

Se attivi questa opzione, tutti i gruppi nei risultati della query vengono espansi in singoli membri. Se disponi di autorizzazioni sufficienti per i gruppi, verranno espansi anche i gruppi nidificati. Questa espansione è limitata a 1000 membri per gruppo.

Questa opzione è efficace solo se non specifichi un principal nella query.

expandResources Se abiliti questa opzione, l'elenco dei risultati della query mostra fino a 1000 risorse discendenti pertinenti per le risorse padre (progetti, cartelle e organizzazioni) nei risultati della query.
expandRoles

Se attivi questa opzione, l'elenco dei risultati della query mostra tutte le autorizzazioni all'interno di ogni ruolo, oltre al ruolo stesso.

Questa opzione è disponibile solo se non specifichi autorizzazioni o ruoli nella query.

outputGroupEdges Se attivi questa opzione, i risultati della query restituiscono le relazioni di appartenenza pertinenti tra i gruppi.
outputResourceEdges Se attivi questa opzione, i risultati della query restituiscono le relazioni principale/secondario pertinenti tra le risorse.

Passaggi successivi