Raccogliere i log di contesto di Identity and Access Management (IAM) Analysis
Questo documento spiega come esportare e importare i log di IAM Analysis in Google Security Operations utilizzando Cloud Storage. Il parser estrae le informazioni su utenti e risorse dai dati JSON di IAM. Quindi, esegue il mapping dei campi estratti all'UDM, creando entità utente con ruoli associati e relazioni tra risorse, arricchendo in definitiva il contesto di sicurezza all'interno della piattaforma Google SecOps.
Prima di iniziare
Assicurati di soddisfare i seguenti prerequisiti:
- Istanza Google SecOps.
- IAM è configurato e attivo nel tuo Google Cloud ambiente.
- Accesso privilegiato e autorizzazioni appropriate per accedere ai log di IAM. Google Cloud
Crea un bucket Cloud Storage
- Accedi alla Google Cloud console.
Vai alla pagina Bucket Cloud Storage.
Fai clic su Crea.
Nella pagina Crea un bucket, inserisci le informazioni del bucket. Dopo ogni passaggio, fai clic su Continua per passare al passaggio successivo:
Nella sezione Inizia, segui questi passaggi:
- Inserisci un nome univoco che soddisfi i requisiti del nome del bucket, ad esempio google-cloud-iam-logs.
Per attivare lo spazio dei nomi gerarchico, fai clic sulla freccia di espansione per espandere la sezione Ottimizza per carichi di lavoro orientati ai file e con uso intensivo dei dati, quindi seleziona Abilita uno spazio dei nomi gerarchico in questo bucket.
Per aggiungere un'etichetta del bucket, fai clic sulla freccia di espansione per espandere la sezione Etichette.
Fai clic su Aggiungi etichetta e specifica una chiave e un valore per l'etichetta.
Nella sezione Scegli dove archiviare i dati, segui questi passaggi:
- Seleziona un Tipo di località.
Utilizza il menu del tipo di località per selezionare una Località in cui i dati degli oggetti all'interno del bucket verranno archiviati in modo permanente.
Per configurare la replica tra bucket, espandi la sezione Configura la replica tra bucket.
Nella sezione Scegli una classe di archiviazione per i tuoi dati , seleziona una classe di archiviazione predefinita per il bucket oppure seleziona Autoclass per la gestione automatica della classe di archiviazione dei dati del bucket.
Nella sezione Scegli come controllare l'accesso agli oggetti, seleziona no per applicare la prevenzione dell'accesso pubblico e seleziona un modello di controllo dell'accesso per gli oggetti del bucket.
Nella sezione Scegli come proteggere i dati degli oggetti, segui questi passaggi:
- Seleziona una delle opzioni in Protezione dei dati che vuoi impostare per il bucket.
- Per scegliere come criptare i dati degli oggetti, fai clic sulla freccia di espansione con l'etichetta Criptaggio dei dati e seleziona un Metodo di criptaggio dei dati.
Fai clic su Crea.
Configurare l'esportazione dei log di IAM Analysis
- Accedi alla Google Cloud console.
- Vai a Logging > Router dei log.
- Fai clic su Crea sink.
Fornisci i seguenti parametri di configurazione:
- Nome sink: inserisci un nome significativo, ad esempio
IAM-Analysis-Sink. - Destinazione sink: seleziona Archiviazione Cloud Storage e inserisci l'URI del bucket, ad esempio
gs://gcp-iam-analysis-logs/. Filtro log:
logName="*iam*" resource.type="gce_instance"
- Nome sink: inserisci un nome significativo, ad esempio
Configurare le autorizzazioni per Cloud Storage
- Vai a IAM e amministrazione > IAM.
- Individua il account di servizio Cloud Logging.
- Concedi il ruolo roles/storage.admin nel bucket.
Configura i feed
Per configurare un feed, segui questi passaggi:
- Vai a Impostazioni SIEM > Feed.
- Fai clic su Aggiungi nuovo feed.
- Nella pagina successiva, fai clic su Configura un singolo feed.
- Nel campo Nome feed, inserisci un nome per il feed, ad esempio Log di IAM Analysis.
- Seleziona Google Cloud Storage V2 come Tipo di origine.
- Seleziona GCP IAM Analysis come Tipo di log.
- Fai clic su Ottieni account di servizio accanto al campo Account di servizio Chronicle.
- Fai clic su Avanti.
Specifica i valori per i seguenti parametri di input:
- URI bucket di archiviazione: URL del bucket Cloud Storage, ad esempio
gs://gcp-iam-analysis-logs/. Questo URL deve terminare con una barra (/). Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze.
Maximum File Age (Età massima dei file): include i file modificati negli ultimi giorni. Il valore predefinito è 180 giorni.
- URI bucket di archiviazione: URL del bucket Cloud Storage, ad esempio
Fai clic su Avanti.
Esamina la nuova configurazione del feed nella schermata Finalizza, quindi fai clic su Invia.
Tabella di mapping UDM
| Campo log | Mapping UDM | Funzione logica |
|---|---|---|
| accessControlLists.accesses.permission | relations.entity.resource.attribute.permissions.name | Direttamente dal campo accessControlLists.accesses.permission nel log non elaborato. |
| attachedResourceFullName | relations.entity.resource.name | Direttamente dal campo attachedResourceFullName nel log non elaborato, ma con i nomi delle risorse finali rimossi. |
| relations.entity.resource.attribute.cloud.environment | Impostato su GOOGLE_CLOUD_PLATFORM. |
|
| relations.entity.resource.product_object_id | Per STORAGE_BUCKET, direttamente dal campo attachedResourceFullName nel log non elaborato, ma con i nomi delle risorse finali rimossi. Per i set di dati BigQuery, è il campo projectName (estratto da attachedResourceFullName) seguito da due punti e dal campo datasetName (estratto da attachedResourceFullName). |
|
| relations.entity.resource.resource_type | Determinato dal pattern del campo attachedResourceFullName nel log non elaborato. |
|
| relations.entity_type | Impostato su RESOURCE, tranne che per SERVICE_ACCOUNT, dove è impostato su USER. |
|
| relations.relationship | Impostato su MEMBER. |
|
| metadata.collected_timestamp | Direttamente dal campo timestamp nel log non elaborato. |
|
| metadata.entity_type | Impostato su USER. |
|
| metadata.product_name | Impostato su GCP IAM ANALYSIS. |
|
| metadata.vendor_name | Impostato su Google Cloud Platform. |
|
| iamBinding.role | entity.user.attribute.roles.name | Direttamente dal campo iamBinding.role nel log non elaborato. |
| identityList.identities.name | entity.user.attribute.roles.type | Impostato su SERVICE_ACCOUNT se il campo identityList.identities.name contiene la stringa serviceAccount. |
| entity.user.email_addresses | Se il campo identityList.identities.name contiene un simbolo @, viene trattato come un indirizzo email. |
|
| entity.user.userid | Se il campo identityList.identities.name non contiene un simbolo @, viene trattato come un ID utente. |
|
| identityList.identities.product_object_id | entity.user.product_object_id | Direttamente dal campo identityList.identities.product_object_id nel log non elaborato. |
| timestamp | timestamp | Direttamente dal campo timestamp nel log non elaborato. |
Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.