Configura il controllo dell'accesso alle funzionalità utilizzando IAM
Il RBAC delle funzionalità controlla l'accesso degli utenti a funzionalità o funzionalità specifiche all'interno di un sistema e determina quali funzionalità sono accessibili agli utenti in base ai loro ruoli. Questa pagina descrive come configurare il controllo dell'accesso alle funzionalità in Google Security Operations.
In questo documento, il termine RBAC precedente viene utilizzato per fare riferimento al sistema di controllo dell'accesso disponibile in precedenza, configurato utilizzando Google SecOps e non Identity and Access Management (IAM). Il controllo degli accessi basato su funzionalità (RBAC) viene utilizzato per descrivere il controllo dell'accesso basato su funzionalità configurato utilizzando IAM.
Google SecOps si integra con IAM di Google Cloud per fornire autorizzazioni e ruoli predefiniti specifici di Google SecOps. Gli amministratori di 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.
Questo documento descrive quanto segue:
- Descrive l'integrazione di Google SecOps con IAM.
- Spiega in che modo i ruoli RBAC delle funzionalità sono diversi dai ruoli RBAC precedenti.
- Fornisce i passaggi per eseguire la migrazione di un'istanza Google SecOps alla funzionalità RBAC.
- Fornisce esempi di come assegnare le autorizzazioni utilizzando IAM.
- Riassume le autorizzazioni e i ruoli predefiniti disponibili in IAM.
Per un elenco delle autorizzazioni di Google SecOps di uso comune e dei log di controllo che generano, consulta Autorizzazioni e metodi API per gruppo di risorse. Per un elenco di tutte le autorizzazioni di Google SecOps, consulta Riferimenti per le autorizzazioni di Identity and Access Management.
Ogni autorizzazione 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 di 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, consulta 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 l'utente.
- IAM restituisce le informazioni di autorizzazione. Se l'utente ha eseguito l'accesso a una pagina dell'applicazione, Google SecOps consente l'accesso solo alle funzionalità a cui l'utente ha ricevuto l'accesso.
- 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à utilizzando 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 del progetto a 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 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 a ruoli personalizzati e creazione di ruoli personalizzati.
- Condizioni IAM.
- Esegui tutti i passaggi descritti in Eseguire il binding di Google SecOps a un progetto Google Cloud per configurare un progetto associato a Google SecOps.
- Configura il tuo provider di identità utilizzando una delle seguenti opzioni:
- Configurare un provider di identità Google Cloud
- Esegui tutti i passaggi descritti in Eseguire l'integrazione di 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 per eseguire i passaggi descritti in questo documento. Per informazioni sulle autorizzazioni richieste per ogni fase della procedura di onboarding, consulta Ruoli richiesti.
Pianifica l'implementazione
Crea criteri IAM che supportino i requisiti di deployment della tua organizzazione. Puoi utilizzare i ruoli predefiniti di Google SecOps o i ruoli personalizzati che crei.
Esamina l'elenco dei ruoli e delle autorizzazioni predefiniti di Google SecOps in base ai requisiti della tua organizzazione. Identifica i membri della tua organizzazione che devono avere accesso a ogni funzionalità di Google SecOps. Se la tua organizzazione richiede criteri IAM diversi dai ruoli di SecOps di Google predefiniti, crea ruoli personalizzati per supportare questi requisiti. Per informazioni sui ruoli personalizzati IAM, consulta Creare e gestire i ruoli personalizzati.
Riepilogo dei ruoli e delle autorizzazioni di Google SecOps
Le seguenti sezioni forniscono un riepilogo generale dei ruoli predefiniti.
L'elenco più aggiornato delle autorizzazioni Google SecOps è disponibile nel
riferimento alle autorizzazioni IAM. Nella sezione
Cerca un'autorizzazione, cerca il termine chronicle
.
L'elenco più aggiornato dei ruoli Google SecOps predefiniti è disponibile nel
riferimento ai ruoli di base e predefiniti IAM. 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 come appaiono in IAM.
Ruolo predefinito in IAM | Titolo | Descrizione |
---|---|---|
roles/chronicle.admin |
Chronicle API Admin | Accesso completo ai servizi API e all'applicazione Google Security Operations, incluse le impostazioni globali. |
roles/chronicle.editor |
Chronicle API Editor | Modifica l'accesso alle risorse dell'API e dell'applicazione Google Security Operations. |
roles/chronicle.viewer |
Chronicle API Viewer | Accesso in sola lettura alle risorse dell'API e dell'applicazione Google Security Operations |
roles/chronicle.limitedViewer |
Chronicle API Limited Viewer | Concede l'accesso in sola lettura alle risorse dell'API e dell'applicazione Google Security Operations, escluse le regole dell'engine di rilevamento e le retrohunt. |
Autorizzazioni Google SecOps in IAM
Le autorizzazioni Google SecOps corrispondono in modo uno a uno ai metodi dell'API Google SecOps. Ogni autorizzazione Google SecOps abilita un'azione specifica su una funzionalità Google SecOps specifica quando si utilizza l'applicazione web o l'API. Le API Google SecOps utilizzate con IAM sono nella fase di lancio Alpha.
I nomi delle autorizzazioni Google SecOps seguono il formato SERVICE.FEATURE.ACTION
.
Ad esempio, il nome dell'autorizzazione chronicle.dashboards.edit
è costituito da quanto segue:
chronicle
: il nome del servizio dell'API Google SecOps.dashboards
: il nome della funzionalità.edit
: l'azione che può essere eseguita sulla funzionalità.
Il nome dell'autorizzazione descrive l'azione che puoi eseguire sulla funzionalità in Google SecOps. Tutte le autorizzazioni Google SecOps hanno il nome del servizio chronicle
.
Assegnare 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 progetto associato a Google SecOps.
Dopo aver attivato l'API Chronicle, i ruoli e le autorizzazioni predefinite di Google SecOps sono disponibili in IAM e puoi creare criteri per supportare i requisiti dell'organizzazione.
Se hai appena creato un'istanza Google SecOps, inizia a creare i 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: assegna il ruolo Amministratore IAM progetto in un progetto dedicato
In questo esempio, il progetto è dedicato all'istanza Google SecOps. Assegna il ruolo 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.
Assegna il ruolo utilizzando la console Google Cloud
I passaggi riportati di seguito descrivono 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 amministrazione.
- Seleziona Concedi accesso. Viene visualizzata la finestra di dialogo Concedi l'accesso a
<project>
. - Nella sezione Aggiungi entità, inserisci l'indirizzo email dell'account gestito nel campo Nuove entità.
- Nella sezione Assegna i ruoli, seleziona il ruolo Project IAM Admin nel menu Seleziona un ruolo.
- Fai clic su Salva.
- Apri la pagina IAM > Autorizzazioni per verificare che all'utente sia stato assegnato il ruolo corretto.
Assegna il ruolo utilizzando Google Cloud CLI
Il seguente comando di esempio 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.WORKFORCE_POOL_ID
: l'identificatore del pool di forza lavoro creato per il tuo provider di identità.USER_EMAIL
: l'indirizzo email dell'utente.
Il seguente comando di esempio mostra come concedere a un gruppo il ruolo chronicle.admin
quando utilizzi 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.USER_EMAIL
: l'indirizzo email dell'utente.
Esempio: assegna il ruolo Amministratore IAM del progetto in un progetto condiviso
In questo esempio, il progetto viene utilizzato per più applicazioni. È associato a un'istanza 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 assegnare a un utente il ruolo Amministratore IAM del progetto in modo che possa assegnare e modificare le associazioni dei ruoli IAM del progetto e configurare Google SecOps. Aggiungerai inoltre gli utenti IAM all'associazione dei ruoli per limitare il loro 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.
Assegna il ruolo utilizzando la console Google Cloud
I passaggi riportati di seguito descrivono 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 amministrazione.
- Seleziona Concedi accesso. Viene visualizzata la finestra di dialogo 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 i ruoli, seleziona il ruolo Project IAM Admin nel menu Seleziona un ruolo.
- 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 delle 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 assegnato il ruolo corretto.
Assegna il ruolo utilizzando Google Cloud CLI
Il seguente comando di esempio mostra come concedere a un utente il ruolo chronicle.admin
e applicare le condizioni IAM 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\
--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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.WORKFORCE_POOL_ID
: l'identificatore del pool di forza lavoro creato per il tuo provider di identità.USER_EMAIL
: l'indirizzo email dell'utente.
Il seguente comando di esempio mostra come concedere a un gruppo il ruolo chronicle.admin
e applicare le 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.USER_EMAIL
: l'indirizzo email dell'utente, ad esempiobob@example.com
.
Esempio: assegna il ruolo di editor dell'API Chronicle a un utente
In questa situazione, vuoi assegnare a un utente la possibilità di modificare l'accesso alle risorse dell'API Google SecOps.
Assegna il ruolo utilizzando la console Google Cloud
- Apri la console Google Cloud.
- Seleziona il progetto associato a Google SecOps.
- Seleziona IAM e amministrazione.
- Seleziona Concedi accesso. Viene visualizzata la 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 i ruoli, seleziona il ruolo Editor API Google SecOps nel menu Seleziona un ruolo.
- 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 assegnato il ruolo corretto.
Assegna il ruolo utilizzando Google Cloud CLI
Il seguente comando di esempio 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.WORKFORCE_POOL_ID
: l'identificatore del pool di forza lavoro creato per il tuo provider di identità.USER_EMAIL
: l'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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.WORKFORCE_POOL_ID
: l'identificatore del pool di forza lavoro creato per il tuo provider di identità.USER_EMAIL
: l'indirizzo email dell'utente.
Esempio: crea e assegna 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 di Google SecOps a quel ruolo personalizzato. Assegna il ruolo personalizzato a un utente o un gruppo. Per ulteriori informazioni sui ruoli personalizzati IAM, consulta Creare e gestire i ruoli personalizzati.
I passaggi che seguono ti consentono di creare un ruolo personalizzato denominato LimitedAdmin
.
Crea 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.get
Crea il ruolo personalizzato. Il seguente esempio di comando gcloud CLI dimostra come creare questo ruolo personalizzato utilizzando il file YAML 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.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 seguente comando di esempio mostra come concedere a un gruppo di utenti il ruolo personalizzato
limitedAdmin
quando utilizzi la federazione delle identità per la 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.WORKFORCE_POOL_ID
: l'identificatore del pool di forza lavoro creato per il provider di identità.GROUP_ID
: l'identificatore del gruppo creato nella federazione delle identità per la forza lavoro. Per informazioni sull'identificatore di gruppo creato nella federazione delle identità per la forza lavoro, consulta Rappresentare gli utenti del pool della forza lavoro nei criteri IAM. Per informazioni suGROUP_ID
, consulta Rappresentare gli utenti del pool di forza lavoro nei criteri IAM.
Il seguente comando di esempio mostra come concedere a un gruppo di utenti il ruolo personalizzato
limitedAdmin
quando utilizzi 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 associato a Google SecOps che hai creato in Associare un'istanza Google SecOps al progetto Google Cloud. Per una descrizione dei campi che identificano un progetto, consulta Creazione e gestione dei progetti.WORKFORCE_POOL_ID
: l'identificatore del pool di forza lavoro creato per il provider di identità.GROUP_ID
: l'identificatore del gruppo creato nella federazione delle identità per la forza lavoro. Per informazioni sull'identificatore di gruppo creato nella federazione delle identità per la forza lavoro, consulta Rappresentare gli utenti del pool della forza lavoro nei criteri IAM. Per informazioni suGROUP_ID
, consulta Rappresentare gli utenti del pool di forza lavoro nei criteri IAM.
Verificare l'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, svolgi i seguenti passaggi:
- Accedi a Google SecOps come utente con i privilegi per accedere a qualsiasi funzionalità. Per ulteriori informazioni, consulta Accedere a Google SecOps.
- Esegui un'azione, ad esempio 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 servizio
chronicle.googleapis.com
.
Per ulteriori informazioni su come visualizzare Cloud Audit Logs, consulta le informazioni sui log di controllo di Google SecOps.
Di seguito è riportato un esempio di log scritto quando l'utente alice@example.com
ha visualizzato l'elenco delle estensioni del 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 al RBAC per controllo dell'accesso dell'accesso alle funzionalità
Utilizza le informazioni riportate in queste sezioni per eseguire la migrazione di un'istanza SIEM di Google Security Operations esistente dal sistema RBAC precedente al RBAC di funzionalità.
Dopo aver eseguito la migrazione alla funzionalità RBAC, puoi anche controllare le attività nell'istanza Google SecOps utilizzando i log di controllo di Cloud.
Differenze tra RBAC precedente e RBAC basato sulle funzionalità
Sebbene i nomi dei ruoli predefiniti RBAC delle funzionalità siano simili ai ruoli RBAC precedenti, i ruoli predefiniti RBAC delle funzionalità non forniscono un accesso alle funzionalità identico a quello dei ruoli RBAC precedenti. Le autorizzazioni assegnate a ciascun ruolo RBAC delle funzionalità predefinite sono leggermente diverse. Per saperne di più, consulta Come vengono mappati i ruoli IAM RBAC della funzionalità ai ruoli RBAC precedenti.
Puoi utilizzare i ruoli predefiniti di Google SecOps così come sono, modificare le autorizzazioni definite in ogni ruolo predefinito o creare ruoli personalizzati e assegnare un insieme diverso di autorizzazioni.
Dopo aver eseguito la migrazione dell'istanza Google SecOps, gestisci i ruoli, le autorizzazioni e i criteri RBAC delle funzionalità 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
Nel modello RBAC precedente, ogni autorizzazione è descritta dal nome della funzionalità e da un'azione. Le autorizzazioni IAM nel RBAC delle funzionalità sono descritte dal nome della risorsa e dal metodo. La seguente tabella illustra la differenza con due esempi, uno relativo alle dashboard e l'altro ai feed.
Esempio di dashboard: per controllare l'accesso alle dashboard, il RBAC precedente fornisce cinque azioni che puoi eseguire sulle dashboard. Il RBAC dei componenti fornisce autorizzazioni IAM simili con un'autorizzazione aggiuntiva,
dashboards.list
, che consente a un utente di elencare le dashboard disponibili.Esempio di feed: per controllare l'accesso ai feed, il RBAC precedente fornisce sette azioni che puoi attivare o disattivare. Con la funzionalità RBAC sono disponibili quattro tipi:
feeds.delete
,feeds.create
,feeds.update
efeeds.view
.
Funzionalità | Autorizzazione nel modello RBAC precedente | Autorizzazione IAM nella funzionalità RBAC | Descrizione dell'azione dell'utente |
---|---|---|---|
Dashboard | Modifica | chronicle.dashboards.edit |
Modificare le dashboard |
Dashboard | Copia | chronicle.dashboards.copy |
Copiare le dashboard |
Dashboard | Crea | chronicle.dashboards.create |
Creare dashboard |
Dashboard | Pianificazione | chronicle.dashboards.schedule |
Pianificare i report |
Dashboard | Elimina | chronicle.dashboards.delete |
Elimina report |
Dashboard | Nessuno. Questa opzione è disponibile solo nella funzionalità RBAC. | 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 |
Aggiornare un feed. |
Feed | EnableFeed | chronicle.feeds.update |
Aggiornare un feed. |
Feed | DisableFeed | chronicle.feeds.update |
Aggiornare un feed. |
Feed | ListFeeds | chronicle.feeds.view |
Restituisce uno o più feed. |
Feed | GetFeed | chronicle.feeds.view |
Restituisce uno o più feed. |
Procedura 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 eseguire la migrazione anche della configurazione controllo dell'accesso alle funzionalità.
Google SecOps fornisce comandi generati automaticamente che creano nuovi criteri IAM RBAC delle funzionalità equivalenti al tuo RBAC precedente, configurato in Google SecOps, nella pagina Impostazioni SIEM > Utenti e gruppi.
Assicurati di disporre delle autorizzazioni richieste descritte in Configurare un progetto Google Cloud per Google SecOps, quindi segui i passaggi descritti in Eseguire la migrazione di autorizzazioni e ruoli esistenti in IAM.
Come i ruoli IAM RBAC delle funzionalità vengono mappati ai ruoli RBAC precedenti
Le informazioni sulla mappatura riportate in questa sezione illustrano alcune delle differenze nell'accesso per i ruoli predefiniti prima e dopo la migrazione. Sebbene i nomi dei ruoli RBAC legacy siano simili ai ruoli predefiniti IAM RBAC, le azioni a cui ciascuno fornisce l'accesso sono diverse. Questa sezione fornisce un'introduzione ad alcune di queste differenze.
Chronicle API Limited Viewer
Questo ruolo concede l'accesso in sola lettura alle risorse dell'API e dell'applicazione Google SecOps,
escluse le regole dell'engine di rilevamento e le retrohunt. Il nome del ruolo è chronicle.limitedViewer
.
Per un elenco dettagliato delle autorizzazioni, consulta Chronicle API Viewer.
Chronicle API Viewer
Questo ruolo fornisce l'accesso di sola lettura alle risorse dell'API e dell'applicazione Google SecOps. Il nome del ruolo è chronicle.viewer
.
Le seguenti autorizzazioni illustrano alcune delle differenze tra i ruoli RBAC legacy e RBAC delle funzionalità simili. Per un elenco dettagliato delle autorizzazioni, consulta Chronicle API Viewer.
Feature RBAC IAM permission | Equivalent permission is mapped to this legacy 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 feature RBAC only. |
chronicle.operations.list |
None. This is available in feature RBAC only. |
chronicle.operations.wait |
None. This is available in feature RBAC only. |
chronicle.instances.report |
None. This is available in feature RBAC only. |
chronicle.collectors.get |
None. This is available in feature RBAC only. |
chronicle.collectors.list |
None. This is available in feature RBAC only. |
chronicle.forwarders.generate |
None. This is available in feature RBAC only. |
chronicle.forwarders.get |
None. This is available in feature RBAC only. |
chronicle.forwarders.list |
None. This is available in feature RBAC only. |
Chronicle API Editor
Questo ruolo consente agli utenti di modificare l'accesso alle risorse API e dell'applicazione Google SecOps. Il nome del ruolo è chronicle.editor
.
Le seguenti autorizzazioni illustrano alcune delle differenze tra i ruoli RBAC legacy e RBAC delle funzionalità, che sono simili. Per un elenco dettagliato delle autorizzazioni, consulta Chronicle API Editor.
Feature RBAC IAM permission | Equivalent permission is mapped to this legacy 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 feature RBAC only. |
Chronicle API Admin
Questo ruolo fornisce l'accesso completo all'applicazione e ai servizi API di Google SecOps, incluse le impostazioni globali. Il nome del ruolo è chronicle.admin
.
Le seguenti autorizzazioni illustrano alcune delle differenze tra i ruoli RBAC legacy e RBAC delle funzionalità, che sono simili. Per un elenco dettagliato delle autorizzazioni, consulta Chronicle API Admin.
Feature RBAC IAM permission | Equivalent permission is mapped to this legacy 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 feature RBAC only. |
chronicle.collectors.delete |
None. This is available in feature RBAC only. |
chronicle.collectors.update |
None. This is available in feature RBAC only. |
chronicle.forwarders.create |
None. This is available in feature RBAC only. |
chronicle.forwarders.delete |
None. This is available in feature RBAC only. |
chronicle.forwarders.update |
None. This is available in feature RBAC only. |
chronicle.parsingErrors.list |
None. This is available in feature RBAC only. |