Configurare il controllo dell'accesso alle funzionalità utilizzando IAM
Google Security Operations si integra con Google Cloud Identity and Access Management (IAM) per fornire autorizzazioni e ruoli predefiniti specifici per Google SecOps. Gli amministratori Google SecOps possono controllare l'accesso alle funzionalità creando criteri IAM che associano utenti o gruppi a ruoli predefiniti oppure possono creare ruoli IAM personalizzati. Questa funzionalità non controlla l'accesso a record o campi UDM specifici in un record UDM.
In questo documento si intende:
- Descrive come Google SecOps si integra con IAM.
- Spiega in che modo i ruoli IAM predefiniti sono diversi dai gruppi Feature RBAC originali.
- Fornisce i passaggi per eseguire la migrazione di un'istanza Google SecOps a IAM.
- Fornisce esempi di come assegnare autorizzazioni utilizzando IAM.
- Riassume le autorizzazioni e i ruoli predefiniti disponibili in IAM.
Per un elenco delle autorizzazioni Google SecOps di uso comune e degli audit log che producono, vedi Autorizzazioni e metodi API per gruppo di risorse. Per un elenco di tutte le autorizzazioni di Google SecOps, vedi Riferimento alle autorizzazioni di Identity and Access Management.
Potresti essere in fase di migrazione delle tue istanze Google SecOps dall'implementazione di RBAC della funzionalità originale. In questo documento, il nome Feature RBAC viene utilizzato quando si fa riferimento al controllo dell'accesso basato sulle funzionalità precedentemente disponibile, che è configurato utilizzando Google SecOps e non IAM. IAM viene utilizzato per descrivere controllo dell'accesso basato su funzionalità configurato utilizzando IAM.
Ogni autorizzazione di Google SecOps è associata a una risorsa e a un metodo dell'API Google SecOps. Quando a un utente o a un gruppo viene concessa un'autorizzazione, l'utente può accedere alla funzionalità in Google SecOps e inviare una richiesta utilizzando il metodo API correlato.
Come Google SecOps si integra con IAM
Per utilizzare IAM, Google SecOps deve essere associato a un progetto Google Cloud e deve essere configurato con Cloud Identity, Google Workspace o la federazione delle identità per la forza lavoro Google Cloud come intermediario nel flusso di autenticazione a un provider di identità di terze parti. Per informazioni sul flusso di autenticazione di terze parti, vedi Integrare Google SecOps con un provider di identità di terze parti.
Google SecOps esegue i seguenti passaggi per verificare e controllare l'accesso alle funzionalità:
- Dopo aver eseguito l'accesso a Google SecOps, un utente accede a una pagina dell'applicazione Google SecOps. In alternativa, l'utente può inviare una richiesta API a Google SecOps.
- Google SecOps verifica le autorizzazioni concesse nei criteri IAM definiti per quell'utente.
- IAM restituisce le informazioni sull'autorizzazione. Se l'utente ha eseguito l'accesso alla pagina di un'applicazione, Google SecOps consente di accedere solo alle funzionalità a cui l'utente è stato concesso.
- Se l'utente ha inviato una richiesta API e non dispone dell'autorizzazione per eseguire l'azione richiesta, la risposta dell'API include un errore. In caso contrario, viene restituita una risposta standard.
Google SecOps fornisce un insieme di ruoli predefiniti con un insieme definito di autorizzazioni che controllano se un utente può accedere alla funzionalità. Il singolo criterio IAM controlla l'accesso alla funzionalità tramite l'interfaccia web e l'API.
Se nel progetto Google Cloud sono presenti altri servizi Google Cloud associati a Google SecOps e vuoi limitare un utente con il ruolo Amministratore IAM progetto per modificare solo le risorse Google SecOps, assicurati di aggiungere condizioni IAM al criterio di autorizzazione. Consulta Assegnare ruoli a utenti e gruppi per un esempio di come eseguire questa operazione.
Gli amministratori personalizzano l'accesso alle funzionalità di Google SecOps in base al ruolo di un dipendente nella tua organizzazione.
Prima di iniziare
- Assicurati di conoscere meglio Cloud Shell, il comando gcloud CLI e la console Google Cloud.
- Acquisisci familiarità con IAM, inclusi i seguenti concetti:
- Panoramica di IAM.
- Panoramica di ruoli e autorizzazioni, ruoli predefiniti rispetto ai ruoli personalizzati e creazione di ruoli personalizzati.
- Condizioni IAM.
- Esegui tutti i passaggi in Associare Google SecOps a un progetto Google Cloud per configurare un progetto associato a Google SecOps.
- Configura il tuo provider di identità utilizzando uno dei seguenti servizi:
- Configura un provider di identità Google Cloud
- Esegui tutti i passaggi descritti in Integrare Google SecOps con un provider di identità di terze parti per configurare l'autenticazione tramite un provider di identità (IdP) di terze parti.
- Associa un progetto all'istanza Google SecOps e configura il provider di identità.
- Assicurati di disporre delle autorizzazioni necessarie per eseguire la procedura descritta in questo documento. Per informazioni sulle autorizzazioni richieste per ogni fase del processo di onboarding, consulta Ruoli obbligatori.
Pianifica l'implementazione
Puoi creare criteri IAM che supportano i requisiti di deployment della tua organizzazione. Puoi utilizzare i ruoli predefiniti di Google SecOps o i ruoli personalizzati creati da te.
Esamina l'elenco di ruoli e autorizzazioni predefiniti di Google SecOps in base ai requisiti della tua organizzazione. Identificare quali membri della tua organizzazione devono avere accesso a ogni funzionalità di Google SecOps. Se la tua organizzazione richiede criteri IAM diversi dai ruoli predefiniti di Google SecOps, crea ruoli personalizzati per supportare questi requisiti. Per informazioni sui ruoli IAM personalizzati, consulta Creare e gestire ruoli personalizzati.
Riepilogo di ruoli e autorizzazioni di Google SecOps
Le seguenti sezioni forniscono un riepilogo generale dei ruoli predefiniti.
L'elenco più aggiornato delle autorizzazioni Google SecOps si trova nel riferimento sulle autorizzazioni IAM. Nella sezione Cerca un'autorizzazione, cerca il termine chronicle
.
L'elenco più aggiornato dei ruoli predefiniti di Google SecOps è disponibile nel riferimento per i ruoli IAM di base e predefiniti. Nella sezione Ruoli predefiniti, seleziona il servizio Ruoli API Chronicle o cerca il termine chronicle
.
Per informazioni sui metodi e sulle autorizzazioni dell'API, sulle pagine in cui vengono utilizzate le autorizzazioni e sulle informazioni registrate in Cloud Audit Logs quando viene chiamata l'API, consulta Autorizzazioni di Chronicle in IAM.
Ruoli predefiniti di Google SecOps in IAM
Google Security Operations fornisce i seguenti ruoli predefiniti così come vengono visualizzati in IAM.
Ruolo predefinito in IAM | Titolo | Descrizione |
---|---|---|
roles/chronicle.admin |
Amministratore API Chronicle | Accesso completo alle applicazioni e ai servizi API di Google Security Operations, incluse le impostazioni globali. |
roles/chronicle.editor |
Editor API Chronicle | Accesso in modifica alle risorse dell'applicazione e dell'API Google Security Operations. |
roles/chronicle.viewer |
Visualizzatore API Chronicle | Accesso in sola lettura alle risorse dell'applicazione e dell'API Google Security Operations |
roles/chronicle.limitedViewer |
Visualizzatore limitato API Chronicle | Concede l'accesso di sola lettura alle risorse dell'applicazione e dell'API Google Security Operations, escluse le regole del motore di rilevamento e le ricerche retroattive. |
Autorizzazioni Google SecOps in IAM
Le autorizzazioni di Google SecOps corrispondono in modo individuale ai metodi dell'API Google SecOps. Ogni autorizzazione di Google SecOps consente un'azione specifica su una funzionalità specifica di Google SecOps quando utilizzi l'applicazione web o l'API. Le API Google SecOps utilizzate con IAM sono in fase di avvio alpha.
I nomi delle autorizzazioni Google SecOps sono nel formato SERVICE.FEATURE.ACTION
.
Ad esempio, il nome dell'autorizzazione chronicle.dashboards.edit
è costituito da:
chronicle
: il nome del servizio API SecOps di Google.dashboards
: il nome della funzionalità.edit
: l'azione che può essere eseguita sulla caratteristica.
Il nome dell'autorizzazione descrive l'azione che puoi eseguire sulla funzionalità in
Google SecOps. Tutte le autorizzazioni Google SecOps hanno il nome servizio chronicle
.
Assegna ruoli a utenti e gruppi
Le sezioni seguenti forniscono casi d'uso di esempio per la creazione di criteri IAM. Il termine <project>
viene utilizzato per rappresentare l'ID del progetto associato a Google SecOps.
Dopo aver abilitato l'API Chronicle, le autorizzazioni e i ruoli predefiniti di Google SecOps sono disponibili in IAM e puoi creare criteri a supporto dei requisiti dell'organizzazione.
Se hai un'istanza Google SecOps appena creata, inizia a creare criteri IAM per soddisfare i requisiti dell'organizzazione.
Se si tratta di un'istanza Google SecOps esistente, consulta Eseguire la migrazione di Google SecOps a IAM per il controllo dell'accesso alle funzionalità per informazioni sulla migrazione dell'istanza a IAM.
Esempio: assegnare il ruolo Amministratore IAM progetto in un progetto dedicato
In questo esempio, il progetto è dedicato alla tua istanza Google SecOps. Devi concedere il ruolo di Amministratore IAM progetto a un utente, in modo che possa concedere e modificare le associazioni dei ruoli IAM del progetto. L'utente può amministrare tutti i ruoli e le autorizzazioni di Google SecOps nel progetto ed eseguire le attività concesse dal ruolo Amministratore IAM progetto.
Assegnare il ruolo utilizzando la console Google Cloud
I passaggi seguenti spiegano come concedere un ruolo a un utente utilizzando la console Google Cloud.
- Apri la console Google Cloud.
- Seleziona il progetto associato a Google SecOps.
- Seleziona IAM e amministratore.
- Seleziona Concedi l'accesso. Viene visualizzata la schermata Concedi l'accesso a
<project>
. - Nella sezione Aggiungi entità, inserisci l'indirizzo email dell'account gestito nel campo Nuove entità.
- Nella sezione Assegna ruoli, nel menu Seleziona un ruolo, seleziona il ruolo Amministratore IAM progetto.
- Fai clic su Salva.
- Apri la pagina IAM > Autorizzazioni per verificare che all'utente sia stato concesso il ruolo corretto.
Assegna il ruolo utilizzando Google Cloud CLI
Il comando di esempio seguente mostra come concedere a un utente il ruolo chronicle.admin
quando si utilizza la federazione delle identità per la forza lavoro.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.WORKFORCE_POOL_ID
: l'identificatore del pool forza lavoro creato per il tuo provider di identità.USER_EMAIL
: indirizzo email dell'utente.
Il comando di esempio seguente mostra come concedere a un gruppo il ruolo chronicle.admin
quando si utilizza Cloud Identity o Google Workspace.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member "user:USER_EMAIL" \
--role=roles/chronicle.admin
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.USER_EMAIL
: indirizzo email dell'utente.
Esempio: assegnare il ruolo Amministratore IAM progetto in un progetto condiviso
In questo esempio, il progetto viene utilizzato per più applicazioni. È associato a un'istanza di Google SecOps ed esegue servizi non correlati a Google SecOps. ad esempio una risorsa Compute Engine utilizzata per un altro scopo.
In questo caso, puoi concedere il ruolo Amministratore IAM progetto a un utente, in modo che possa concedere e modificare le associazioni dei ruoli IAM del progetto e configurare Google SecOps. Aggiungerai inoltre IAM all'associazione dei ruoli per limitarne l'accesso solo ai ruoli correlati a Google SecOps nel progetto. Questo utente può concedere solo i ruoli specificati nella condizione IAM.
Per ulteriori informazioni sulle condizioni IAM, consulta Panoramica delle condizioni IAM e Gestire le associazioni di ruoli condizionali.
Assegnare il ruolo utilizzando la console Google Cloud
I passaggi seguenti spiegano come concedere un ruolo a un utente utilizzando la console Google Cloud.
- Apri la console Google Cloud.
- Seleziona il progetto associato a Google SecOps.
- Seleziona IAM e amministratore.
- Seleziona Concedi l'accesso. Viene visualizzata la schermata Concedi l'accesso a
<project>
. - Nella finestra di dialogo Concedi l'accesso a
<project>
, nella sezione Aggiungi entità, inserisci l'indirizzo email dell'utente nel campo Nuove entità. - Nella sezione Assegna ruoli, nel menu Seleziona un ruolo, seleziona il ruolo Amministratore IAM progetto.
- Fai clic su + Aggiungi condizione IAM.
- Nella finestra di dialogo Aggiungi condizione, inserisci le seguenti informazioni:
- Inserisci un Titolo per la condizione.
- Seleziona l'Editor condizioni.
- Inserisci la seguente condizione:
api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])
- Fai clic su Salva nella finestra di dialogo Aggiungi condizione.
- Fai clic su Salva nella finestra di dialogo Concedi l'accesso a
<project>
. - Apri la pagina IAM > Autorizzazioni per verificare che all'utente sia stato concesso il ruolo corretto.
Assegna il ruolo utilizzando Google Cloud CLI
Il comando di esempio seguente mostra come concedere a un utente il ruolo chronicle.admin
e applicare condizioni IAM quando si utilizza la federazione delle identità della forza lavoro.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.WORKFORCE_POOL_ID
: l'identificatore del pool forza lavoro creato per il provider di identità.USER_EMAIL
: indirizzo email dell'utente.
Il comando di esempio seguente mostra come concedere a un gruppo il ruolo chronicle.admin
e applicare condizioni IAM quando si utilizza Cloud Identity o Google Workspace.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=user:USER_EMAIL \
--role=roles/chronicle.admin\
--condition=^:^'expression=api.getAttribute(iam.googleapis.com/modifiedGrantsByRole,[]).hasOnly([roles/chronicle.googleapis.com/limitedViewer, roles/chronicle.googleapis.com/viewer, roles/chronicle.googleapis.com/editor, roles/chronicle.googleapis.com/admin])':'title=Chronicle Role Admin'
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.USER_EMAIL
: l'indirizzo email dell'utente, ad esempiobob@example.com
.
Esempio: assegnare il ruolo Editor API Chronicle a un utente
In questo caso, vuoi concedere a un utente la possibilità di modificare l'accesso alle risorse dell'API Google SecOps.
Assegnare il ruolo utilizzando la console Google Cloud
- Apri la console Google Cloud.
- Seleziona il progetto associato a Google SecOps.
- Seleziona IAM e amministratore.
- Seleziona Concedi l'accesso. Si apre la finestra di dialogo Concedi l'accesso a
<project>
. - Nella sezione Aggiungi entità, nel campo Nuove entità, inserisci l'indirizzo email dell'utente.
- Nella sezione Assegna ruoli, nel menu Seleziona un ruolo, scegli il ruolo Editor API Google SecOps.
- Fai clic su Salva nella finestra di dialogo Concedi l'accesso a
<project>
. - Apri la pagina IAM > Autorizzazioni per verificare che all'utente sia stato concesso il ruolo corretto.
Assegna il ruolo utilizzando Google Cloud CLI
Il comando di esempio seguente mostra come concedere a un utente il ruolo chronicle.editor
quando si utilizza la federazione delle identità per la forza lavoro.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_EMAIL \
--role=roles/chronicle.editor
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.WORKFORCE_POOL_ID
: l'identificatore del pool forza lavoro creato per il tuo provider di identità.USER_EMAIL
: indirizzo email dell'utente.Il seguente comando di esempio mostra come concedere a un utente il ruolo
chronicle.editor
quando si utilizza Cloud Identity o Google Workspace.
gcloud projects add-iam-policy-binding PROJECT_ID \
--member=user:USER_EMAIL \
--role=roles/chronicle.editor
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.WORKFORCE_POOL_ID
: l'identificatore del pool forza lavoro creato per il tuo provider di identità.USER_EMAIL
: indirizzo email dell'utente.
Esempio: creare e assegnare un ruolo personalizzato a un gruppo
Se i ruoli predefiniti di Google SecOps non forniscono il gruppo di autorizzazioni che soddisfano il caso d'uso della tua organizzazione, puoi creare un ruolo personalizzato e assegnare le autorizzazioni Google SecOps a quel ruolo personalizzato. Puoi assegnare il ruolo personalizzato a un utente o a un gruppo. Per ulteriori informazioni sui ruoli IAM personalizzati, consulta Creare e gestire ruoli personalizzati.
I passaggi seguenti ti consentono di creare un ruolo personalizzato denominato LimitedAdmin
.
Creare un file YAML o JSON che definisce il ruolo personalizzato, denominato
LimitedAdmin
, e le autorizzazioni concesse a questo ruolo. Di seguito è riportato un esempio di file YAML.title: "LimitedAdmin" description: "Admin role with some permissions removed" stage: "ALPHA" includedPermissions: - chronicle.collectors.create - chronicle.collectors.delete - chronicle.collectors.get - chronicle.collectors.list - chronicle.collectors.update - chronicle.dashboards.copy - chronicle.dashboards.create - chronicle.dashboards.delete - chronicle.dashboards.get - chronicle.dashboards.list - chronicle.extensionValidationReports.get - chronicle.extensionValidationReports.list - chronicle.forwarders.create - chronicle.forwarders.delete - chronicle.forwarders.generate - chronicle.forwarders.get - chronicle.forwarders.list - chronicle.forwarders.update - chronicle.instances.get - chronicle.instances.report - chronicle.legacies.legacyGetCuratedRulesTrends - chronicle.legacies.legacyGetRuleCounts - chronicle.legacies.legacyGetRulesTrends - chronicle.legacies.legacyUpdateFinding - chronicle.logTypeSchemas.list - chronicle.multitenantDirectories.get - chronicle.operations.cancel - chronicle.operations.delete - chronicle.operations.get - chronicle.operations.list - chronicle.operations.wait - chronicle.parserExtensions.activate - chronicle.parserExtensions.create - chronicle.parserExtensions.delete - chronicle.parserExtensions.generateKeyValueMappings - chronicle.parserExtensions.get - chronicle.parserExtensions.legacySubmitParserExtension - chronicle.parserExtensions.list - chronicle.parserExtensions.removeSyslog - chronicle.parsers.activate - chronicle.parsers.activateReleaseCandidate - chronicle.parsers.copyPrebuiltParser - chronicle.parsers.create - chronicle.parsers.deactivate - chronicle.parsers.delete - chronicle.parsers.get - chronicle.parsers.list - chronicle.parsers.runParser - chronicle.parsingErrors.list - chronicle.validationErrors.list - chronicle.validationReports.get - resourcemanager.projects.getIamPolicy
Crea il ruolo personalizzato. Il seguente comando gcloud CLI di esempio mostra come creare questo ruolo personalizzato utilizzando il file YAML che hai creato nel passaggio precedente.
gcloud iam roles create ROLE_NAME \ --project=PROJECT_ID \ --file=YAML_FILE_NAME
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.YAML_FILE_NAME
: il nome del file creato nel passaggio precedente.ROLE_NAME
: il nome del ruolo personalizzato definito nel file YAML.
Assegna il ruolo personalizzato utilizzando Google Cloud CLI.
Il comando di esempio seguente mostra come concedere a un gruppo di utenti il ruolo personalizzato
limitedAdmin
quando si utilizza la federazione delle identità della forza lavoro.gcloud projects add-iam-policy-binding PROJECT_ID \ --member=principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.WORKFORCE_POOL_ID
: l'identificatore del pool forza lavoro creato per il tuo provider di identità.GROUP_ID
: l'identificatore di gruppo creato nella federazione delle identità della forza lavoro. Per informazioni sull'identificatore di gruppo creato nella federazione delle identità della forza lavoro, consulta Rappresentare gli utenti del pool di forza lavoro nei criteri IAM. Per informazioni suGROUP_ID
, consulta Rappresentare gli utenti del pool di forza lavoro nei criteri IAM.
Il comando di esempio seguente mostra come concedere a un gruppo di utenti il ruolo personalizzato
limitedAdmin
quando si utilizza Cloud Identity o .gcloud projects add-iam-policy-binding PROJECT_ID \ --member=groupid:GROUP_ID \ --role=projects/PROJECT_ID/roles/limitedAdmin
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto collegato a Google SecOps creato nella sezione Associazione di un'istanza Google SecOps a un progetto Google Cloud. Consulta Creazione e gestione dei progetti per una descrizione dei campi che identificano un progetto.WORKFORCE_POOL_ID
: l'identificatore del pool forza lavoro creato per il tuo provider di identità.GROUP_ID
: l'identificatore di gruppo creato nella federazione delle identità della forza lavoro. Per informazioni sull'identificatore di gruppo creato nella federazione delle identità della forza lavoro, consulta Rappresentare gli utenti del pool di forza lavoro nei criteri IAM. Per informazioni suGROUP_ID
, consulta Rappresentare gli utenti del pool di forza lavoro nei criteri IAM.
Verifica audit logging
Le azioni degli utenti in Google SecOps e le richieste all'API Google SecOps vengono registrate come Cloud Audit Logs. Per verificare che i log vengano scritti, segui questi passaggi:
- Accedi a Google SecOps come utente con privilegi per accedere a qualsiasi funzionalità. Per ulteriori informazioni, vedi Accedere a Google SecOps.
- Eseguire un'azione, ad esempio eseguire una ricerca.
- Nella console Google Cloud, utilizza Esplora log per visualizzare gli audit log nel progetto Cloud associato a Google SecOps. Gli audit log di Google SecOps hanno il seguente nome di servizio:
chronicle.googleapis.com
.
Per ulteriori informazioni su come visualizzare Cloud Audit Logs, consulta Informazioni sugli audit log di Google SecOps.
Di seguito è riportato un esempio di log scritto quando l'utente alice@example.com
ha visualizzato l'elenco delle estensioni parser in Google SecOps.
{
"protoPayload": {
"@type": "type.googleapis.com/google.cloud.audit.AuditLog",
"authenticationInfo": {
"principalEmail": "alice@example.com"
},
"requestMetadata": {
"callerIp": "private",
"callerSuppliedUserAgent": "abc_client",
"requestAttributes": {
"time": "2023-03-27T21:09:43.897772385Z",
"reason": "8uSywAYeWhxBRiBhdXRoIFVwVGljay0-REFUIGV4Y2abcdef",
"auth": {}
},
"destinationAttributes": {}
},
"serviceName": "chronicle.googleapis.com",
"methodName": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"authorizationInfo": [
{
"resource": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"permission": "chronicle.parserExtensions.list",
"granted": true,
"resourceAttributes": {}
}
],
"resourceName": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-",
"numResponseItems": "12",
"request": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsRequest",
"parent": "projects/100000000000/locations/us/instances/aaaa0aa0-000A-00a0-0000-0000a0aa0a1/logTypes/-"
},
"response": {
"@type": "type.googleapis.com/google.cloud.chronicle.v1main.ListParserExtensionsResponse"
}
},
"insertId": "1h0b0e0a0",
"resource": {
"type": "audited_resource",
"labels": {
"project_id": "dev-sys-server001",
"method": "google.cloud.chronicle.v1main.ParserService.ListParserExtensions",
"service": "chronicle.googleapis.com"
}
},
"timestamp": "2023-03-27T21:09:43.744940164Z",
"severity": "INFO",
"logName": "projects/dev-sys-server001/logs/cloudaudit.googleapis.com%2Fdata_access",
"receiveTimestamp": "2023-03-27T21:09:44.863100753Z"
}
Esegui la migrazione di Google SecOps a IAM per il controllo dell'accesso alle funzionalità
Utilizza le informazioni in queste sezioni per eseguire la migrazione di un'istanza SIEM di Google Security Operations esistente dal precedente controllo dell'accesso basato sulle funzionalità (funzionalità RBAC) a IAM.
Dopo aver eseguito la migrazione a IAM, puoi anche controllare l'attività nell'istanza Google SecOps utilizzando Cloud Audit Logs.
Differenze tra Feature RBAC e IAM
Sebbene i nomi dei ruoli IAM predefiniti siano simili ai gruppi Feature RBAC, i ruoli IAM predefiniti non forniscono accesso alle funzionalità identico a quello dei gruppi Feature RBAC originali. Le autorizzazioni assegnate a ciascun ruolo IAM predefinito sono leggermente diverse. Per maggiori informazioni, consulta Come vengono mappate le autorizzazioni IAM a ogni gruppo RBAC delle funzionalità originale.
Puoi utilizzare i ruoli predefiniti di Google SecOps così come sono, modificare le autorizzazioni definite in ciascun ruolo predefinito o creare ruoli personalizzati e assegnare un insieme di autorizzazioni diverso.
Dopo aver eseguito la migrazione dell'istanza Google SecOps, potrai gestire i ruoli, le autorizzazioni e i criteri IAM utilizzando IAM nella console Google Cloud. Le seguenti pagine dell'applicazione Google SecOps vengono modificate per indirizzare gli utenti alla console Google Cloud:
- Utenti e gruppi
- Ruoli
In Feature RBAC, ogni autorizzazione è descritta dal nome della funzionalità e da un'azione. Le autorizzazioni IAM sono descritte dal nome e dal metodo della risorsa. La seguente tabella illustra la differenza con due esempi, uno relativo alle dashboard e il secondo relativo ai feed.
Esempio di dashboard: per controllare l'accesso alle dashboard, Feature RBAC fornisce cinque azioni che puoi eseguire sulle dashboard. IAM fornisce autorizzazioni simili con un'altra,
dashboards.list
, che consente a un utente di elencare le dashboard disponibili.Esempio di feed: per controllare l'accesso ai feed, la funzionalità RBAC fornisce sette azioni che puoi attivare o disattivare. Con IAM esistono quattro:
feeds.delete
,feeds.create
,feeds.update
efeeds.view
.
Selezione delle | Autorizzazione in Funzionalità RBAC | Autorizzazioni IAM | Descrizione dell'azione dell'utente |
---|---|---|---|
Dashboard | Modifica | chronicle.dashboards.edit |
Modifica dashboard |
Dashboard | Copia | chronicle.dashboards.copy |
Copia dashboard |
Dashboard | Creazione | chronicle.dashboards.create |
Creazione di dashboard |
Dashboard | Pianificazione | chronicle.dashboards.schedule |
Pianificare i report |
Dashboard | Elimina | chronicle.dashboards.delete |
Elimina report |
Dashboard | Nessuno. Questa opzione è disponibile solo in IAM. | chronicle.dashboards.list |
Elenco delle dashboard disponibili |
Feed | DeleteFeed | chronicle.feeds.delete |
Eliminare un feed. |
Feed | CreateFeed | chronicle.feeds.create |
Crea un feed. |
Feed | UpdateFeed | chronicle.feeds.update |
Aggiorna un feed. |
Feed | EnableFeed | chronicle.feeds.update |
Aggiorna un feed. |
Feed | DisableFeed | chronicle.feeds.update |
Aggiorna un feed. |
Feed | ListFeeds | chronicle.feeds.view |
Restituisci uno o più feed. |
Feed | GetFeed | chronicle.feeds.view |
Restituisci uno o più feed. |
Passaggi per eseguire la migrazione delle autorizzazioni di controllo dell'accesso esistenti
Dopo aver completato i passaggi per la migrazione di un'istanza Google SecOps esistente, puoi anche eseguire la migrazione della configurazione controllo dell'accesso alle funzionalità.
Google SecOps fornisce comandi generati automaticamente che creano nuovi criteri IAM equivalenti al precedente RBAC basato su funzionalità, configurato in Google SecOps nella pagina Impostazioni SIEM > Utenti e gruppi.
Assicurati di disporre delle autorizzazioni necessarie descritte in Configurare un progetto Google Cloud per Google SecOps, quindi segui i passaggi descritti in Eseguire la migrazione di autorizzazioni e ruoli esistenti a IAM.
Come vengono mappate le autorizzazioni IAM a ogni gruppo Feature RBAC
Le informazioni di mappatura in questa sezione illustrano alcune delle differenze di accesso per i ruoli predefiniti prima e dopo la migrazione. Anche se i nomi dei ruoli RBAC delle funzionalità sono simili ai ruoli IAM predefiniti, le azioni a cui ognuno fornisce l'accesso sono diverse. Questa sezione fornisce un'introduzione ad alcune di queste differenze.
Visualizzatore limitato API Chronicle
Questo ruolo concede l'accesso in sola lettura alle risorse dell'applicazione e dell'API Google SecOps, escluse le regole del motore di rilevamento e le ricerche retroattive. Il nome del ruolo è chronicle.limitedViewer
.
Questo ruolo è nuovo. Per un elenco dettagliato delle autorizzazioni, vedi Visualizzatore API Chronicle.
Visualizzatore API Chronicle
Questo ruolo fornisce l'accesso di sola lettura alle risorse dell'applicazione e dell'API Google SecOps. Il nome del ruolo è chronicle.viewer
.
Le seguenti autorizzazioni illustrano alcune delle differenze tra il gruppo RBAC delle funzionalità e IAM. Per un elenco dettagliato delle autorizzazioni, vedi Visualizzatore API Chronicle.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.ruleDeployments.get |
Viewer |
chronicle.ruleDeployments.list |
Viewer |
chronicle.rules.verifyRuleText |
Viewer |
chronicle.rules.get |
Viewer |
chronicle.rules.list |
Viewer |
chronicle.legacies.legacyGetRuleCounts |
Viewer |
chronicle.legacies.legacyGetRulesTrends |
Viewer |
chronicle.rules.listRevisions |
Viewer |
chronicle.legacies.legacyGetCuratedRulesTrends |
Viewer |
chronicle.ruleExecutionErrors.list |
Viewer |
chronicle.curatedRuleSets.get |
Viewer |
chronicle.curatedRuleSetDeployments.get |
Viewer |
chronicle.curatedRuleSets.list |
Viewer |
chronicle.curatedRuleSetDeployments.list |
Viewer |
chronicle.curatedRuleSetCategories.get |
Viewer |
chronicle.curatedRuleSetCategories.list |
Viewer |
chronicle.curatedRuleSetCategories.countAllCuratedRuleSetDetections |
Viewer |
chronicle.curatedRuleSets.countCuratedRuleSetDetections |
Viewer |
chronicle.curatedRules.get |
Viewer |
chronicle.curatedRules.list |
Viewer |
chronicle.referenceLists.list |
Viewer |
chronicle.referenceLists.get |
Viewer |
chronicle.referenceLists.verifyReferenceList |
Viewer |
chronicle.retrohunts.get |
Viewer |
chronicle.retrohunts.list |
Viewer |
chronicle.dashboards.schedule |
Editor |
chronicle.operations.get |
None. This is available in IAM only. |
chronicle.operations.list |
None. This is available in IAM only. |
chronicle.operations.wait |
None. This is available in IAM only. |
chronicle.instances.report |
None. This is available in IAM only. |
chronicle.collectors.get |
None. This is available in IAM only. |
chronicle.collectors.list |
None. This is available in IAM only. |
chronicle.forwarders.generate |
None. This is available in IAM only. |
chronicle.forwarders.get |
None. This is available in IAM only. |
chronicle.forwarders.list |
None. This is available in IAM only. |
Editor API Chronicle
Questo ruolo consente agli utenti di modificare l'accesso alle risorse dell'applicazione e dell'API Google SecOps. Il nome del ruolo è chronicle.editor
.
Le seguenti autorizzazioni illustrano alcune delle differenze tra il gruppo RBAC delle funzionalità e IAM. Per un elenco dettagliato delle autorizzazioni, vedi Editor API Chronicle.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.ruleDeployments.update |
Editor |
chronicle.rules.update |
Editor |
chronicle.rules.create |
Editor |
chronicle.referenceLists.create |
Editor |
chronicle.referenceLists.update |
Editor |
chronicle.rules.runRetrohunt |
Editor |
chronicle.retrohunts.create |
Editor |
chronicle.curatedRuleSetDeployments.batchUpdate |
Editor |
chronicle.curatedRuleSetDeployments.update |
Editor |
chronicle.dashboards.copy |
Editor |
chronicle.dashboards.edit |
Editor |
chronicle.dashboards.create |
Editor |
chronicle.legacies.legacyUpdateFinding |
Editor |
chronicle.dashboards.delete |
Editor |
chronicle.operations.delete |
None. This is available in IAM only. |
Amministratore API Chronicle
Questo ruolo fornisce l'accesso completo ai servizi API e dell'applicazione Google SecOps, incluse le impostazioni globali. Il nome del ruolo è chronicle.admin
.
Le seguenti autorizzazioni illustrano alcune delle differenze tra il gruppo RBAC delle funzionalità e IAM. Per un elenco dettagliato delle autorizzazioni, vedi Amministratore API Chronicle.
Google SecOps permission | Equivalent permission is mapped to this Feature RBAC role |
---|---|
chronicle.parserExtensions.delete |
Admin |
chronicle.parsers.copyPrebuiltParser |
Admin |
chronicle.extensionValidationReports.get |
Admin |
chronicle.extensionValidationReports.list |
Admin |
chronicle.validationErrors.list |
Admin |
chronicle.parsers.runParser |
Admin |
chronicle.parserExtensions.get |
Admin |
chronicle.parserExtensions.list |
Admin |
chronicle.validationReports.get |
Admin |
chronicle.parserExtensions.create |
Admin |
chronicle.parserExtensions.removeSyslog |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parserExtensions.activate |
Admin |
chronicle.parsers.activateReleaseCandidate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parsers.deactivate |
Admin |
chronicle.parserExtensions.generateKeyValuechronicle.Mappings |
Admin |
chronicle.parserExtensions.legacySubmitParserExtension |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.activate |
Admin |
chronicle.parsers.list |
Admin |
chronicle.parsers.create |
Admin |
chronicle.parsers.delete |
Admin |
chronicle.feeds.delete |
Admin |
chronicle.feeds.create |
Admin |
chronicle.feeds.update |
Admin |
chronicle.feeds.enable |
Admin |
chronicle.feeds.disable |
Admin |
chronicle.feeds.list |
Admin |
chronicle.feeds.get |
Admin |
chronicle.feedSourceTypeSchemas.list |
Admin |
chronicle.logTypeSchemas.list |
Admin |
chronicle.operations.cancel |
Editor |
chronicle.collectors.create |
None. This is available in IAM only. |
chronicle.collectors.delete |
None. This is available in IAM only. |
chronicle.collectors.update |
None. This is available in IAM only. |
chronicle.forwarders.create |
None. This is available in IAM only. |
chronicle.forwarders.delete |
None. This is available in IAM only. |
chronicle.forwarders.update |
None. This is available in IAM only. |
chronicle.parsingErrors.list |
None. This is available in IAM only. |