Analizza i criteri IAM

Questa pagina mostra come utilizzare Policy Analyzer per scoprire quali entità (utenti, account di servizio, gruppi e domini) hanno un determinato accesso a determinate risorse Google Cloud.

Gli esempi in questa pagina mostrano come eseguire una query di analisi dei criteri e visualizzare immediatamente i risultati. Se vuoi esportare i risultati per ulteriori analisi, puoi utilizzare AnalyzeIamPolicyLongrunning per scrivere i risultati delle query in BigQuery o Cloud Storage.

Prima di iniziare

Ruoli e autorizzazioni richiesti

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

Ruoli IAM richiesti

Per ottenere le autorizzazioni necessarie per analizzare un criterio di autorizzazione, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto, nella cartella o nell'organizzazione a cui intendi definire l'ambito della query:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per analizzare un criterio di autorizzazione. Per visualizzare esattamente le autorizzazioni necessarie, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per analizzare un criterio 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 riuscire a ottenere queste autorizzazioni con i ruoli personalizzati o altri ruoli predefiniti.

Autorizzazioni Google Workspace richieste

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

Determina 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 progetto, nella cartella o nell'organizzazione. Per ottenere queste informazioni, crea una query che includa la risorsa per la quale vuoi analizzare l'accesso e uno o più ruoli o autorizzazioni da verificare.

Console

  1. Nella console Google Cloud, vai alla pagina Analizzatore criteri.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza criteri, individua il riquadro con l'etichetta Query personalizzata e, nel riquadro, fai clic su Crea query personalizzata.

  3. Nel campo Seleziona ambito della query, scegli il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Policy Analyzer analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per tutte le risorse all'interno del progetto, della cartella o dell'organizzazione.

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

    1. Nel campo Parametro 1, seleziona Risorsa dal menu a discesa.
    2. Nel campo Risorsa, inserisci il nome 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 di 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 selettori Ruolo e Autorizzazione finché non vengono 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 le autorizzazioni o i ruoli specificati per la risorsa specificata.

    Le query di analisi dei criteri 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 entro questo periodo di tempo, nella console Google Cloud viene visualizzato 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 qualsiasi dato di comando riportato di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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 dei nomi delle risorse completi, consulta Formato dei nomi delle risorse.
  • 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 controllerà se sono presenti 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 tua query, seguito dalla relativa associazione dei ruoli IAM. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è CONDITIONAL.

Le entità con una qualsiasi delle autorizzazioni specificate per la risorsa specificata 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
  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 termine 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 le istruzioni, consulta Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

REST

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

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

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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 dei nomi delle risorse completi, consulta Formato dei nomi delle risorse.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Policy Analyzer controllerà se sono presenti 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 delle seguenti opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione pertinente del ruolo IAM, quindi elenca le risorse, gli accessi e le entità al suo interno. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è elencato come CONDITIONAL.

Le entità con una qualsiasi delle autorizzazioni specificate per la risorsa specificata 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"
        },
        {
          "permission": "compute.instances.start"
        }
      ]
    }
  ],
  "identityList": {
    "identities": [
      {
        "name": "user:my-user@example.com"
      }
    ]
  },
  "fullyExplored": true
},
...

Se la richiesta scade prima del termine 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 le istruzioni, consulta Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determina quali entità hanno determinati ruoli o autorizzazioni

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

Console

  1. Nella console Google Cloud, vai alla pagina Analizzatore criteri.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza criteri, individua il riquadro con l'etichetta Query personalizzata e, nel riquadro, fai clic su Crea query personalizzata.

  3. Nel campo Seleziona ambito della query, scegli il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Policy Analyzer analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per tutte le risorse 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, scegli il ruolo o l'autorizzazione che vuoi controllare.

  6. (Facoltativo) Per verificare la presenza di ulteriori ruoli e autorizzazioni, segui questi passaggi:

    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 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 inseriti e una tabella dei risultati di tutte le entità con le autorizzazioni o i ruoli specificati per qualsiasi risorsa nell'ambito.

    Le query di analisi dei criteri 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 entro questo periodo di tempo, nella console Google Cloud viene visualizzato 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 qualsiasi dato di comando riportato di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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 di ruoli che vuoi controllare, ad esempio roles/compute.admin,roles/compute.imageUser. Se elenchi più ruoli, Analizzatore criteri controllerà se sono elencati dei ruoli.
  • 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 controllerà se sono presenti 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 pertinente del ruolo IAM, quindi elenca le risorse, gli accessi e le entità al suo interno. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è elencato come CONDITIONAL.

Le entità con uno qualsiasi 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 termine 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 le istruzioni, consulta 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, usa il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

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

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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 verificare, ad esempio roles/compute.admin. Se elenchi più ruoli, Policy Analyzer verificherà se sono presenti ruoli elencati.
  • PERMISSION_1, PERMISSION_2... PERMISSION_N: le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Policy Analyzer controllerà se sono presenti 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 delle seguenti opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione pertinente del ruolo IAM, quindi elenca le risorse, gli accessi e le entità al suo interno. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è elencato come CONDITIONAL.

Le entità con uno qualsiasi 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 termine 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 le istruzioni, consulta Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determina il livello di accesso di un'entità a una risorsa

Puoi utilizzare Policy Analyzer per verificare di quali ruoli o autorizzazioni dispone un'entità per una risorsa dell'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 criteri.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza criteri, individua il riquadro con l'etichetta Query personalizzata e, nel riquadro, fai clic su Crea query personalizzata.

  3. Nel campo Seleziona ambito della query, scegli il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Policy Analyzer analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per tutte le risorse 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 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 di risorse fornite.
    3. Fai clic su Aggiungi selettore.
    4. Nel campo Parametro 2, seleziona Entità dal menu a discesa.
    5. Nel campo Entità, inizia a digitare il nome di un utente, di un account di servizio o di un gruppo. Quindi, seleziona l'utente, l'account di servizio o il gruppo di cui vuoi analizzare l'accesso dall'elenco di entità fornito.
  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 tutti i ruoli dell'entità specificata per la risorsa specificata.

    Le query di analisi dei criteri 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 entro questo periodo di tempo, nella console Google Cloud viene visualizzato 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 qualsiasi dato di comando riportato di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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 dei nomi delle risorse completi, consulta Formato dei nomi delle risorse.
  • 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à, consulta 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 tua query, seguito dalla relativa associazione dei ruoli IAM. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è CONDITIONAL.

I ruoli dell'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 termine 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 le istruzioni, consulta 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, usa il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

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

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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 dei nomi delle risorse completi, consulta Formato dei nomi delle risorse.
  • 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à, consulta 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 delle seguenti opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione pertinente del ruolo IAM, quindi elenca le risorse, gli accessi e le entità al suo interno. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è elencato come CONDITIONAL.

I ruoli dell'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 termine 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 le istruzioni, consulta Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Determina a quali risorse può accedere un'entità

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

Console

  1. Nella console Google Cloud, vai alla pagina Analizzatore criteri.

    Vai alla pagina Analizzatore criteri

  2. Nella sezione Analizza criteri, individua il riquadro con l'etichetta Query personalizzata e, nel riquadro, fai clic su Crea query personalizzata.

  3. Nel campo Seleziona ambito della query, scegli il progetto, la cartella o l'organizzazione a cui vuoi limitare l'ambito della query. Policy Analyzer analizzerà l'accesso per il progetto, la cartella o l'organizzazione, nonché per tutte le risorse all'interno del progetto, della cartella o dell'organizzazione.

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

    1. Nel campo Parametro 1, seleziona Entità dal menu a discesa.
    2. Nel campo Entità, inizia a digitare il nome di un utente, di un account di servizio o di un gruppo. Quindi, seleziona l'utente, l'account di servizio o il gruppo di cui vuoi analizzare l'accesso dall'elenco di entità fornito.
    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 vengono 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 per le quali l'entità specificata ha i ruoli o le autorizzazioni specificati.

    Le query di analisi dei criteri 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 entro questo periodo di tempo, nella console Google Cloud viene visualizzato 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 qualsiasi dato di comando riportato di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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à, consulta 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 controllerà se sono presenti 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 tua query, seguito dalla relativa associazione dei ruoli IAM. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è CONDITIONAL.

Le risorse per le quali l'entità specificata dispone di una qualsiasi 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 termine 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 le istruzioni, consulta 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, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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à, consulta 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 controllerà se sono presenti 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 delle seguenti opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione pertinente del ruolo IAM, quindi elenca le risorse, gli accessi e le entità al suo interno. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è elencato come CONDITIONAL.

Le risorse per le quali l'entità specificata dispone di una qualsiasi 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 termine 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 le istruzioni, consulta Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Stabilisci l'accesso a un orario specifico

Se il 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 la data e l'ora di accesso nella richiesta.

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

gcloud

Prima di utilizzare qualsiasi dato di comando riportato di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore project, folder o organization.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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: Facoltativa. Un elenco separato da virgole delle autorizzazioni che vuoi controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer controllerà se sono presenti autorizzazioni elencate.
  • FULL_RESOURCE_NAME: facoltativo. 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: Facoltativa. Un elenco separato da virgole delle autorizzazioni che vuoi controllare, ad esempio compute.instances.get,compute.instances.start. Se elenchi più autorizzazioni, Policy Analyzer controllerà se sono presenti autorizzazioni elencate.
  • ACCESS_TIME: l'ora che vuoi controllare. L'ora deve essere nel futuro. Utilizza un timestamp nel 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 tua query, seguito dalla relativa associazione dei ruoli IAM. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è CONDITIONAL.

Se includi la data di accesso nella richiesta, Policy Analyzer può valutare le condizioni di data/ora. Se la condizione è false, quel ruolo non è incluso nella risposta. Se la condizione è true, il risultato della valutazione della condizione è 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 termine 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 le istruzioni, consulta 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, usa il metodo analyzeIamPolicy dell'API Cloud Asset Inventory.

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

  • RESOURCE_TYPE: il tipo di risorsa a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati a questa risorsa e ai relativi discendenti. Utilizza il valore projects, folders o organizations.
  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione Google Cloud a cui vuoi limitare la ricerca. Verranno analizzati solo i criteri di autorizzazione IAM associati 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, Policy Analyzer controllerà se sono presenti autorizzazioni elencate.
  • FULL_RESOURCE_NAME: facoltativo. 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: facoltativo. Le autorizzazioni che vuoi controllare, ad esempio compute.instances.get. Se elenchi più autorizzazioni, Policy Analyzer controllerà se sono presenti autorizzazioni elencate.
  • ACCESS_TIME: l'ora che vuoi controllare. L'ora deve essere nel futuro. Utilizza un timestamp nel 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 delle seguenti opzioni:

Ricevi una risposta JSON con i risultati dell'analisi. Ogni risultato dell'analisi descrive un'associazione pertinente del ruolo IAM, quindi elenca le risorse, gli accessi e le entità al suo interno. Se l'associazione dei ruoli è condizionale, il risultato dell'analisi include anche il risultato della valutazione della condizione. Se non è stato possibile valutare la condizione, il risultato è elencato come CONDITIONAL.

Se includi la data di accesso nella richiesta, Policy Analyzer può valutare le condizioni di data/ora. Se la condizione è false, quel ruolo non è incluso nella risposta. Se la condizione restituisce 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 termine 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 le istruzioni, consulta Scrivere l'analisi dei criteri in BigQuery o Scrivere l'analisi dei criteri in Cloud Storage.

Abilita opzioni

Per ricevere risultati di query più dettagliati, puoi attivare le seguenti opzioni.

Console

Opzione Descrizione
Elenco delle risorse contenute in quelle che soddisfano i criteri della query Se abiliti questa opzione, nei risultati della query vengono elencati fino a 1000 risorse discendenti pertinenti per qualsiasi risorsa padre (progetti, cartelle e organizzazioni) nei risultati della query.
Elenca singoli utenti all'interno dei gruppi

Se abiliti 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'entità nella query.

Elenca autorizzazioni all'interno dei ruoli

Se abiliti questa opzione, nei risultati della query vengono elencate tutte le autorizzazioni all'interno di ciascun 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, vedi Flag facoltativi.

Flag Descrizione
--analyze-service-account-impersonation

Se questa opzione è abilitata, Policy Analyzer esegue ulteriori query di analisi per determinare chi può rappresentare gli account di servizio che hanno l'accesso specificato alle risorse specificate. Policy Analyzer esegue una query per ogni account di servizio nei risultati delle query. Queste query analizzano chi dispone di una delle seguenti autorizzazioni per l'account di servizio:

  • 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 eseguire l'esportazione in BigQuery o eseguire l'esportazione in Cloud Storage utilizzando analyze-iam-policy-longrunning anziché utilizzare analyze-iam-policy.

--expand-groups

Se abiliti 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'entità nella query.

--expand-resources Se abiliti questa opzione, nei risultati della query vengono elencati fino a 1000 risorse discendenti pertinenti per qualsiasi risorsa padre (progetti, cartelle e organizzazioni) nei risultati della query.
--expand-roles

Se abiliti questa opzione, nei risultati della query vengono elencate tutte le autorizzazioni all'interno di ciascun ruolo, oltre al ruolo stesso.

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

--output-group-edges Se abiliti questa opzione, i risultati della query mostrano le relazioni di appartenenza pertinenti tra i gruppi.
--output-resource-edges Se abiliti questa opzione, i risultati della query restituiscono le relazioni padre/figlio pertinenti tra le risorse.

REST

Per attivare le opzioni, aggiungi innanzitutto 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 da attivare, nel formato "OPTION": true. La seguente tabella descrive le opzioni disponibili:

Opzione Descrizione
analyzeServiceAccountImpersonation

Se questa opzione è abilitata, Policy Analyzer esegue ulteriori query di analisi per determinare chi può rappresentare gli account di servizio che hanno l'accesso specificato alle risorse specificate. Policy Analyzer esegue una query per ogni account di servizio nei risultati delle query. Queste query analizzano chi dispone di una delle seguenti autorizzazioni per l'account di servizio:

  • 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 eseguire l'esportazione in BigQuery o eseguire l'esportazione in Cloud Storage utilizzando AnalyzeIamPolicyLongrunning anziché utilizzare AnalyzeIamPolicy.

expandGroups

Se abiliti 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'entità nella query.

expandResources Se abiliti questa opzione, nei risultati della query vengono elencati fino a 1000 risorse discendenti pertinenti per qualsiasi risorsa padre (progetti, cartelle e organizzazioni) nei risultati della query.
expandRoles

Se abiliti questa opzione, nei risultati della query vengono elencate tutte le autorizzazioni all'interno di ciascun ruolo, oltre al ruolo stesso.

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

outputGroupEdges Se abiliti questa opzione, i risultati della query mostrano le relazioni di appartenenza pertinenti tra i gruppi.
outputResourceEdges Se abiliti questa opzione, i risultati della query restituiscono le relazioni padre/figlio pertinenti tra le risorse.

Passaggi successivi