Questa pagina spiega come analizzare i criteri di Identity and Access Management (IAM) in modo asincrono e scrivere i risultati in Cloud Storage. La funzionalità è in gran parte equivalente alle analisi dei criteri IAM, tranne che per il risultato dell'analisi scritto in un bucket Cloud Storage.
Prima di iniziare
Attiva Cloud Asset API.
Devi abilitare l'API nel progetto o nell'organizzazione che utilizzerai per inviare la query. La risorsa non deve necessariamente essere la stessa a cui è limitata l'ambito della query.
Autorizzazioni e ruoli richiesti
Per eseguire un'analisi dei criteri ed esportare i risultati in Cloud Storage, sono necessari i ruoli e le autorizzazioni seguenti.
Ruoli IAM obbligatori
Per ottenere le autorizzazioni necessarie per analizzare un criterio ed esportare i risultati in BigQuery, chiedi al tuo amministratore di concederti i seguenti ruoli IAM per il progetto, la cartella o l'organizzazione a cui è limitata l'ambito della query.
- Visualizzatore Cloud Asset (
roles/cloudasset.viewer
) - Creatore oggetti Storage (
roles/storage.objectCreator
) -
Per analizzare i criteri con ruoli IAM personalizzati:
Visualizzatore ruoli (
roles/iam.roleViewer
) -
Per utilizzare l'interfaccia a riga di comando di Google Cloud per analizzare i criteri:
Service Usage Consumer (
roles/serviceusage.serviceUsageConsumer
)
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per analizzare un criterio ed esportare i risultati in BigQuery. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
-
cloudasset.assets.analyzeIamPolicy
-
cloudasset.assets.searchAllResources
-
cloudasset.assets.searchAllIamPolicies
-
storage.objects.create
-
Per analizzare i criteri con ruoli IAM personalizzati:
iam.roles.get
-
Per utilizzare l'interfaccia a riga di comando di Google Cloud per analizzare i criteri:
serviceusage.services.use
Potresti anche essere in grado di ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Autorizzazioni richieste per Google Workspace
Per verificare se un'entità dispone di determinati ruoli o autorizzazioni a causa della sua appartenenza a un gruppo Google Workspace, devi disporre dell'autorizzazione groups.read
Google Workspace. Questa autorizzazione è contenuta nel ruolo Amministratore
Lettore dei gruppi e in ruoli più efficaci, ad esempio i ruoli di Amministratore di Gruppi o
di super amministratore. Per ulteriori informazioni, consulta Assegnare ruoli di amministratore specifici.
Chiamata a AnalyzeIamPolicyLongrunning
Il metodo AnalyzeIamPolicyLongrunning
ti consente di emettere una richiesta di analisi e ottenere risultati nel bucket Cloud Storage specificato.
gcloud
Prima di utilizzare i dati di comando riportati di seguito, apporta le seguenti sostituzioni:
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi limitare la ricerca. Verranno analizzati soltanto i criteri di autorizzazione IAM associati a questa risorsa e ai suoi discendenti. Utilizza il valoreproject
,folder
oorganization
.RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione Google Cloud che vuoi utilizzare per l'ambito della ricerca. Verranno analizzati soltanto i criteri di autorizzazione IAM associati a questa risorsa e ai suoi discendenti. Gli ID progetto sono stringhe alfanumeriche comemy-project
. Gli ID di cartelle e organizzazioni sono numerici, come123456789012
.PRINCIPAL
: l'entità di cui vuoi analizzare l'accesso, nel formatoPRINCIPAL_TYPE:ID
, ad esempiouser:my-user@example.com
. Per un elenco completo dei tipi di entità, consulta Identificatori delle entità.PERMISSIONS
: un elenco separato da virgole delle autorizzazioni per le quali vuoi controllare, ad esempiocompute.instances.get,compute.instances.start
. Se indichi più autorizzazioni, Analizzatore criteri verifica la presenza di autorizzazioni.STORAGE_OBJECT_URI
: l'identificatore univoco della risorsa dell'oggetto Cloud Storage in cui vuoi esportare i risultati dell'analisi, nel formatogs://BUCKET_NAME/OBJECT_NAME
, ad esempiogs://my-bucket/analysis.json
.
Esegui il comando gcloud asset analytics-iam-policy-longrun:
Linux, macOS o Cloud Shell
gcloud asset analyze-iam-policy-longrunning --RESOURCE_TYPE=RESOURCE_ID \ --full-resource-name=FULL_RESOURCE_NAME \ --identity=PRINCIPAL \ --permissions='PERMISSIONS' \ --gcs-output-path=STORAGE_OBJECT_URI
Windows (PowerShell)
gcloud asset analyze-iam-policy-longrunning --RESOURCE_TYPE=RESOURCE_ID ` --full-resource-name=FULL_RESOURCE_NAME ` --identity=PRINCIPAL ` --permissions='PERMISSIONS' ` --gcs-output-path=STORAGE_OBJECT_URI
Windows (cmd.exe)
gcloud asset analyze-iam-policy-longrunning --RESOURCE_TYPE=RESOURCE_ID ^ --full-resource-name=FULL_RESOURCE_NAME ^ --identity=PRINCIPAL ^ --permissions='PERMISSIONS' ^ --gcs-output-path=STORAGE_OBJECT_URI
Dovresti ricevere una risposta simile alla seguente:
Analyze IAM Policy in progress. Use [gcloud asset operations describe projects/my-project/operations/AnalyzeIamPolicyLongrunning/1195028485971902504711950280359719028666] to check the status of the operation.
REST
Per analizzare un criterio di autorizzazione IAM ed esportare i risultati in Cloud Storage, utilizza il metodo analyzeIamPolicyLongrunning
dell'API Cloud Asset Inventory.
Prima di utilizzare uno qualsiasi dei dati della richiesta, effettua le seguenti sostituzioni:
RESOURCE_TYPE
: il tipo di risorsa per cui vuoi limitare la ricerca. Verranno analizzati soltanto i criteri di autorizzazione IAM associati a questa risorsa e ai suoi discendenti. Utilizza il valoreprojects
,folders
oorganizations
.RESOURCE_ID
: l'ID del progetto, della cartella o dell'organizzazione Google Cloud che vuoi utilizzare per l'ambito della ricerca. Verranno analizzati soltanto i criteri di autorizzazione IAM associati a questa risorsa e ai suoi discendenti. Gli ID progetto sono stringhe alfanumeriche comemy-project
. Gli ID di cartelle e organizzazioni sono numerici, come123456789012
.-
FULL_RESOURCE_NAME
: facoltativo. Il nome completo della risorsa di cui vuoi analizzare l'accesso. Per un elenco dei formati completi dei nomi delle risorse, consulta Formato del nome della risorsa. PRINCIPAL
: facoltativo. L'entità di cui vuoi analizzare l'accesso, nel formatoPRINCIPAL_TYPE:ID
, ad esempiouser:my-user@example.com
. Per un elenco completo dei tipi di entità, consulta Identificatori delle entità.PERMISSION_1
,PERMISSION_2
...PERMISSION_N
: facoltativo. Le autorizzazioni che vuoi verificare, ad esempiocompute.instances.get
. Se elenca più autorizzazioni, Analizzatore criteri verifica la presenza di autorizzazioni elencate.STORAGE_OBJECT_URI
: l'identificatore univoco della risorsa dell'oggetto Cloud Storage in cui vuoi esportare i risultati dell'analisi, nel formatogs://BUCKET_NAME/OBJECT_NAME
, ad esempiogs://my-bucket/analysis.json
.
Metodo HTTP e URL:
POST https://cloudasset.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID:analyzeIamPolicyLongrunning
Corpo JSON richiesta:
{ "analysisQuery": { "resourceSelector": { "fullResourceName": "FULL_RESOURCE_NAME" }, "identitySelector": { "identity": "PRINCIPAL" }, "accessSelector": { "permissions": [ "PERMISSION_1", "PERMISSION_2", "PERMISSION_N" ] }, "outputConfig": { "gcsDestination": { "uri": "STORAGE_OBJECT_URI" } } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/my-project/operations/AnalyzeIamPolicyLongrunning/1206385342502762515812063858425027606003", "metadata": { "@type": "type.googleapis.com/google.cloud.asset.v1.AnalyzeIamPolicyLongrunningMetadata", "createTime": "2022-04-12T21:31:10.753173929Z" } }
Visualizzazione dei risultati di analisi dei criteri IAM
Per visualizzare i risultati dell'analisi dei criteri IAM:
Nella console, vai alla pagina Browser.
Apri il nuovo file in cui hai scritto la tua analisi.
I risultati elencano le tupla {identity, role(s)/permission(s), resource}
insieme ai criteri IAM che le hanno generate.