Raccogliere i log del browser aziendale Island

Supportata in:

Questo documento spiega come configurare Island Enterprise Browser per inviare i log a Google Security Operations utilizzando i webhook.

Island Enterprise Browser è un browser aziendale basato su Chromium progettato per migliorare la sicurezza aziendale e la governance IT. Consente alle organizzazioni di controllare e monitorare il modo in cui gli utenti interagiscono con le applicazioni web, fornendo un controllo granulare delle policy su ogni aspetto dell'attività del browser, tra cui copia, incolla, download, caricamento e acquisizione di screenshot. Island offre visibilità, governance e conformità complete per le applicazioni SaaS e web interne critiche, supportando al contempo la navigazione sicura integrata, il filtro web, la prevenzione degli exploit e l'accesso alla rete Zero Trust.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Un'istanza Google SecOps
  • Island Enterprise Browser supporta l'invio di log SIEM basati su webhook tramite HTTPS
  • Accesso alla Google Cloud Console (per la creazione della chiave API)
  • Accesso alla console di gestione dell'isola con autorizzazioni di amministratore (ruolo Amministratore completo o Amministratore di sistema)

Crea un feed webhook in Google SecOps

Crea il feed

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed di notizie.
  3. Nella pagina successiva, fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed (ad esempio, Island Enterprise Browser Logs).
  5. Seleziona Webhook come Tipo di origine.
  6. Seleziona Island Enterprise Browser come Tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:
    • (Facoltativo) Delimitatore di divisione: inserisci \n per dividere gli eventi NDJSON per nuova riga.
    • Spazio dei nomi dell'asset: lo spazio dei nomi dell'asset
    • Etichette di importazione: l'etichetta da applicare agli eventi di questo feed
  9. Fai clic su Avanti.
  10. Controlla la nuova configurazione del feed di notizie nella schermata Finalizza e poi fai clic su Invia.

Genera e salva la chiave segreta

Dopo aver creato il feed, devi generare una chiave segreta per l'autenticazione:

  1. Nella pagina dei dettagli del feed, fai clic su Genera chiave segreta.
  2. Viene visualizzata una finestra di dialogo con la chiave segreta.
  3. Copia e salva la chiave segreta in modo sicuro.

Importante: la chiave secret viene visualizzata una sola volta e non può essere recuperata in un secondo momento. Se la perdi, devi generare una nuova chiave segreta.

Recuperare l'URL dell'endpoint del feed

  1. Vai alla scheda Dettagli del feed.
  2. Nella sezione Endpoint Information (Informazioni sull'endpoint), copia l'Feed endpoint URL (URL endpoint del feed).
  3. Il formato dell'URL è:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import
    

    Dove {region} è la regione dell'istanza Google SecOps (ad esempio us, europe o asia-southeast1) e {parent} è il percorso della risorsa nel formato projects/<PROJECT_ID>/locations/<LOCATION>/instances/<INSTANCE_ID>/logTypes/<LOG_TYPE>.

  4. Salva questo URL per i passaggi successivi.

  5. Fai clic su Fine.

Crea una chiave API Google Cloud

Chronicle richiede una chiave API per l'autenticazione. Crea una chiave API con limitazioni nella Google Cloud Console.

Crea la chiave API

  1. Vai alla pagina Credenziali della console Google Cloud.
  2. Seleziona il tuo progetto (il progetto associato alla tua istanza di Chronicle).
  3. Fai clic su Crea credenziali > Chiave API.
  4. Viene creata una chiave API e visualizzata in una finestra di dialogo.
  5. Fai clic su Modifica chiave API per limitare la chiave.

Limita la chiave API

  1. Nella pagina delle impostazioni della chiave API:
    • Nome: inserisci un nome descrittivo (ad esempio Chronicle Webhook API Key - Island)
  2. In Restrizioni API:
    1. Seleziona Limita chiave.
    2. Nel menu a discesa Seleziona API, cerca e seleziona API Google SecOps (o API Chronicle).
  3. Fai clic su Salva.
  4. Copia il valore della chiave API dal campo Chiave API nella parte superiore della pagina.
  5. Salva la chiave API in modo sicuro.

Configura il webhook di Island Enterprise Browser

Crea l'URL webhook

  • Combina l'URL dell'endpoint Chronicle e la chiave API:

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
  • Esempio:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...&secret=abcd1234...
    

Crea l'integrazione SIEM nella console di gestione di Island

  1. Accedi alla Island Management Console come amministratore (Full Admin o System Admin).
  2. Vai a Modules (Moduli) > Platform Settings (Impostazioni piattaforma) > System Settings (Impostazioni di sistema) > Integrations (Integrazioni) > SIEM.
  3. Fai clic su Configurazione per l'integrazione SIEM generica.
  4. Viene visualizzato il riquadro Impostazioni di integrazione SIEM generica.
  5. Nel campo Authentication Type (Tipo di autenticazione), seleziona HTTPS.
  6. Nel campo Server URL (URL server), incolla l'URL webhook completo creato nel passaggio precedente (l'URL endpoint di Chronicle con la chiave API e la chiave secret aggiunte come parametri di ricerca).
  7. Fai clic su Verifica connessione per confermare la connessione all'endpoint configurato.
  8. Fai clic su Crea integrazione.
  9. Se l'integrazione va a buon fine, lo stato Attivo e funzionante viene visualizzato sotto il pulsante Impostazioni per l'integrazione SIEM generica.

Genera una chiave API SIEM (metodo alternativo)

Se l'integrazione SIEM generica richiede una chiave API per l'autenticazione anziché parametri URL HTTPS, generane una nel seguente modo:

  1. Accedi alla Console di amministrazione di Island come amministratore.
  2. Vai a Modules (Moduli) > Platform Settings (Impostazioni piattaforma) > System Settings (Impostazioni di sistema) > Integrations (Integrazioni) > SIEM.
  3. Fai clic su Configurazione per l'integrazione SIEM generica.
  4. Fai clic su Genera chiave API per creare una nuova chiave.
  5. Viene visualizzato il riquadro Crea una nuova integrazione della chiave API, che mostra la chiave API generata.
  6. Copia la chiave API negli appunti e salvala in modo sicuro.
  7. Fai clic su Chiudi.

Importante: la chiave API viene visualizzata una sola volta durante la generazione. Copialo e salvalo immediatamente.

Autorizzazioni obbligatorie

L'account della console di gestione dell'isola utilizzato per configurare l'integrazione SIEM deve disporre di uno dei seguenti ruoli:

Ruolo Descrizione
Amministratore completo Accesso amministrativo completo alla console di gestione di Island
System Admin Accesso amministrativo a livello di sistema con autorizzazioni per gestire le integrazioni

Riferimento ai metodi di autenticazione

I feed webhook di Chronicle supportano più metodi di autenticazione. Scegli il metodo supportato dal tuo fornitore.

Se il fornitore supporta le intestazioni HTTP personalizzate, utilizza questo metodo per una maggiore sicurezza.

  • Formato della richiesta:

    POST <ENDPOINT_URL> HTTP/1.1
    Content-Type: application/json
    x-goog-chronicle-auth: <API_KEY>
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

Vantaggi:

  • Chiave API e secret non visibili nell'URL
  • Più sicuro (le intestazioni non vengono registrate nei log di accesso del server web)
  • Metodo preferito quando il fornitore lo supporta

Metodo 2: parametri di query

Se il tuo fornitore non supporta le intestazioni personalizzate, aggiungi le credenziali all'URL.

  • Formato dell'URL:

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY>
    
  • Esempio:

    https://{region}-chronicle.googleapis.com/v1/{parent}/logs:import?key=AIzaSyD...&secret=abcd1234...
    
  • Formato della richiesta:

    POST <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET_KEY> HTTP/1.1
    Content-Type: application/json
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

Svantaggi:

  • Credenziali visibili nell'URL
  • Potrebbero essere registrati nei log di accesso del server web
  • Meno sicuro delle intestazioni

Metodo 3: ibrido (URL + intestazione)

Alcune configurazioni utilizzano la chiave API nell'URL e la chiave secret nell'intestazione.

  • Formato della richiesta:

    POST <ENDPOINT_URL>?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {
            "event": "data",
            "timestamp": "2025-01-15T10:30:00Z"
    }
    

Nomi delle intestazioni di autenticazione

Chronicle accetta i seguenti nomi di intestazione per l'autenticazione:

Per la chiave API:

  • x-goog-chronicle-auth (consigliata)
  • X-Goog-Chronicle-Auth (senza distinzione tra maiuscole e minuscole)

Per la chiave secret:

  • x-chronicle-auth (consigliata)
  • X-Chronicle-Auth (senza distinzione tra maiuscole e minuscole)

Limiti e best practice dei webhook

Limiti per le richieste

Limite Valore
Dimensioni massime della richiesta 4 MB
QPS (query al secondo) max 15.000
Timeout richieste 30 secondi
Comportamento dei nuovi tentativi Automatico con backoff esponenziale

Endpoint API regionali

Island Enterprise Browser utilizza URL della console di gestione diversi in base alla regione:

Regione URL della Console di gestione URL di base dell'API
US https://management.island.io https://management.island.io/api/external/v1/
UE https://eu.management.island.io https://eu.management.island.io/api/external/v1/

Utilizza l'URL della Console di gestione corrispondente alla regione del tenant di Island Enterprise Browser.

Tabella di mappatura UDM

La tabella seguente elenca i campi di log del tipo di log ISLAND_BROWSER e i relativi campi UDM.

Campo log mappatura UDM
timestamp metadata.event_timestamp
id metadata.product_log_id
type metadata.product_event_type
email principal.user.email_addresses
user_id principal.user.userid
user_name principal.user.user_display_name
source_ip principal.ip, principal.asset.ip
public_ip principal.ip, principal.asset.ip
machine_name principal.hostname, principal.asset.hostname
machine_id principal.asset.asset_id
os_platform principal.asset.platform_software.platform
country principal.location.country_or_region
region principal.location.state
top_level_url target.url
saas_application_name target.application
saas_application_id target.resource.id
rule_id security_result.rule_id
rule_name security_result.rule_name
verdict security_result.action_details
verdict_reason security_result.description
url_web_reputation security_result.confidence_score
saas_application_category security_result.category_details
client_event_id network.session_id
version metadata.product_version
window_id principal.resource.id
frame_url about.url
device_id principal.asset.attribute.labels
os_user_name principal.asset.attribute.labels
tab_id security_result.detection_fields
signature security_result.detection_fields
compatibility_mode additional.fields
processed_date additional.fields
country_code additional.fields
is_island_private_access additional.fields
url_web_categories additional.fields
origin additional.fields
tenant_id additional.fields
matched_user_group principal.group.group_display_name
matched_device_posture.domain principal.domain.name
details.application_parameters_details_list.parameters.parameter_value event.idm.read_only_udm.target.resource_ancestors.name
details.application_parameters_details_list.parameters.parameter_value event.idm.read_only_udm.target.administrative_domain
details.application_parameters_details_list.parameters.parameter_name event.idm.read_only_udm.additional.fields
matchedDevicePosture.azure_ad event.idm.read_only_udm.additional.fields
matchedDevicePosture.registry_keys event.idm.read_only_udm.additional.fields
matchedDevicePosture.client_certificates event.idm.read_only_udm.security_result.detection_fields
logMessage.userId event.idm.read_only_udm.principal.user.userid
logMessage.email event.idm.read_only_udm.principal.user.email_addresses
logMessage.userName event.idm.read_only_udm.principal.user.user_display_name
logMessage.type event.idm.read_only_udm.metadata.product_event_type
logMessage.verdict event.idm.read_only_udm.security_result.action_details
logMessage.topLevelUrl event.idm.read_only_udm.network.http.referral_url
logMessage.sourceIp event.idm.read_only_udm.principal.ip
logMessage.publicIp event.idm.read_only_udm.principal.ip
logMessage.sourceIp event.idm.read_only_udm.principal.asset.ip
logMessage.publicIp event.idm.read_only_udm.principal.asset.ip
logMessage.saasApplicationName event.idm.read_only_udm.target.application
logMessage.saasApplicationCategory event.idm.read_only_udm.security_result.category_details
logMessage.country event.idm.read_only_udm.principal.location.country_or_region
logMessage.region event.idm.read_only_udm.principal.location.state
logMessage.osUserName event.idm.read_only_udm.principal.administrative_domain
logMessage.machineId event.idm.read_only_udm.principal.asset.asset_id
logMessage.saasApplicationId event.idm.read_only_udm.target.resource.product_object_id
logMessage.timestamp event.idm.read_only_udm.metadata.event_timestamp
logMessage.tenantId event.idm.read_only_udm.metadata.product_deployment_id
logMessage.id event.idm.read_only_udm.metadata.product_log_id
logMessage.createdDate event.idm.read_only_udm.target.resource.attribute.creation_time
logMessage.updatedDate event.idm.read_only_udm.target.resource.attribute.last_update_time
logMessage.frameUrl event.idm.read_only_udm.additional.fields
logMessage.urlWebCategories event.idm.read_only_udm.additional.fields
logMessage.urlWebReputation event.idm.read_only_udm.additional.fields
logMessage.countryCode event.idm.read_only_udm.additional.fields
logMessage.origin event.idm.read_only_udm.additional.fields
logMessage.tabId event.idm.read_only_udm.additional.fields
, event.idm.read_only_udm.additional.fields
and event.idm.read_only_udm.additional.fields
logMessage.details.navigation_details.is_fail_open_close_active event.idm.read_only_udm.security_result.detection_fields
logMessage.details.navigation_details.is_iframe event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.application_access_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.browser_access_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.browser_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.dlp_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.details.policy_version_details.pam_policy_version event.idm.read_only_udm.security_result.detection_fields
logMessage.isIslandPrivateAccess event.idm.read_only_udm.security_result.detection_fields
logMessage.compatibilityMode event.idm.read_only_udm.security_result.detection_fields
logMessage.matchedDevicePosture.client_certificates.issuer event.idm.read_only_udm.security_result.detection_fields
logMessage.matchedDevicePosture.client_certificates.subject event.idm.read_only_udm.security_result.detection_fields
logMessage.matchedDevicePosture.client_certificates.thumbprint event.idm.read_only_udm.security_result.detection_fields
logMessage.machineName event.idm.read_only_udm.security_result.detection_fields
logMessage.deviceId event.idm.read_only_udm.security_result.detection_fields
logMessage.ruleName event.idm.read_only_udm.security_result.rule_name
logMessage.ruleId event.idm.read_only_udm.security_result.rule_id
machineName event.idm.read_only_udm.principal.hostname e event.idm.read_only_udm.principal.asset.hostname
region event.idm.read_only_udm.principal.location.state
osUserName event.idm.read_only_udm.principal.administrative_domain
machineId event.idm.read_only_udm.principal.asset.asset_id
saasApplicationId event.idm.read_only_udm.target.resource.product_object_id
matchedDevicePosture.architecture event.idm.read_only_udm.principal.asset.hardware.cpu_platform
matchedDevicePosture.browser_name event.idm.read_only_udm.principal.application
matchedDevicePosture.os_code_name event.idm.read_only_udm.principal.platform_version
matchedDevicePosture.os_version event.idm.read_only_udm.principal.platform_patch_level
matchedDevicePosture.device_type event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.disk_encryption event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.domain event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.is_default_browser event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.island_platform event.idm.read_only_udm.principal.resource.attribute.labels
matchedDevicePosture.machine_name event.idm.read_only_udm.additional.fields
matchedDevicePosture.os_firewall_enabled event.idm.read_only_udm.additional.fields
matchedDevicePosture.os_screen_lock_enabled event.idm.read_only_udm.additional.fields
matchedDevicePosture.secure_boot event.idm.read_only_udm.additional.fields
countryCode,details.ipa_details.ipa_forwarding_method event.idm.read_only_udm.additional.fields
details.ipa_details.ipa_rule event.idm.read_only_udm.additional.fields
details.navigation_details.is_fail_open_close_active event.idm.read_only_udm.additional.fields
details.navigation_details.is_iframe event.idm.read_only_udm.additional.fields
details.policy_version_details.application_access_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.browser_access_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.browser_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.dlp_policy_version event.idm.read_only_udm.additional.fields
details.policy_version_details.pam_policy_version,windowId,compatibilityMode event.idm.read_only_udm.additional.fields
createdDate event.idm.read_only_udm.additional.fields
syslogConnectorId event.idm.read_only_udm.additional.fields
product.enabled event.idm.read_only_udm.security_result.detection_fields
product.name event.idm.read_only_udm.security_result.detection_fields
product.signatures_are_up_to_date event.idm.read_only_udm.security_result.detection_fields
art event.idm.read_only_udm.additional.fields
application_access_policy_version event.idm.read_only_udm.additional.fields
sourceDnsDomain event.idm.read_only_udm.additional.fields
av event.idm.read_only_udm.additional.fields
geid event.idm.read_only_udm.additional.fields
policy_version_details.application_access_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.browser_access_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.browser_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.dlp_policy_version event.idm.read_only_udm.additional.fields
policy_version_details.pam_policy_version event.idm.read_only_udm.additional.fields
parent_frame_url event.idm.read_only_udm.additional.fields
aid event.idm.read_only_udm.network.session_id
agentZoneURI event.idm.read_only_udm.network.http.referral_url
at event.idm.read_only_udm.principal.application
ahost event.idm.read_only_udm.principal.hostname
ahost event.idm.read_only_udm.principal.asset.hostname
agt event.idm.read_only_udm.principal.ip
agt event.idm.read_only_udm.principal.asset.ip
amac event.idm.read_only_udm.principal.mac
deviceZoneURI event.idm.read_only_udm.principal.resource.attribute.labels
catdt event.idm.read_only_udm.security_result.category_details
deviceSeverity event.idm.read_only_udm.security_result.severity_details
atz event.idm.read_only_udm.target.location.country_or_region
user_name event.idm.read_only_udm.principal.user.user_display_name
device_id event.idm.read_only_udm.principal.asset.attribute.labels
machine_name event.idm.read_only_udm.principal.hostname e event.idm.read_only_udm.principal.asset.hostname
os_platform event.idm.read_only_udm.principal.asset.platform_software.platform
country event.idm.read_only_udm.principal.location.country_or_region
os_user_name event.idm.read_only_udm.principal.user.attribute.labels
top_level_url event.idm.read_only_udm.target.url
rule_id event.idm.read_only_udm.security_result.rule_id
rule_name event.idm.read_only_udm.security_result.rule_name
client_event_id event.idm.read_only_udm.network.session_id
country_code event.idm.read_only_udm.additional.fields
tenant_id event.idm.read_only_udm.additional.fields
tab_id event.idm.read_only_udm.security_result.detection_fields
signature event.idm.read_only_udm.security_result.detection_fields
source event.idm.read_only_udm.additional.fields
public_ip event.idm.read_only_udm.principal.ip e event.idm.read_only_udm.principal.asset.ip
source_ip event.idm.read_only_udm.principal.ip e event.idm.read_only_udm.principal.asset.ip
processed_date event.idm.read_only_udm.additional.fields
matched_user_group event.idm.read_only_udm.principal.group.group_display_name
frame_url event.idm.read_only_udm.additional.fields
url_web_categories event.idm.read_only_udm.additional.fields
client_sending_date event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.name event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.enabled event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.signatures_are_up_to_date event.idm.read_only_udm.additional.fields
matched_device_posture.anti_malware_product.signatures_last_updated event.idm.read_only_udm.additional.fields
matched_device_posture.client_certificates.issuer event.idm.read_only_udm.additional.fields
matched_device_posture.client_certificates.subject event.idm.read_only_udm.additional.fields
matched_device_posture.client_certificates.thumbprint event.idm.read_only_udm.security_result.detection_fields
matched_device_posture.domain event.idm.read_only_udm.principal.domain.name
matched_device_posture.os_code_name event.idm.read_only_udm.principal.asset.platform_software.platform_version
matched_device_posture.machine_name event.idm.read_only_udm.target.hostname e event.idm.read_only_udm.target.asset.hostname
matched_device_posture.disk_encryption event.idm.read_only_udm.additional.fields
matched_device_posture.is_virtual_machine event.idm.read_only_udm.additional.fields
matched_device_posture.processes event.idm.read_only_udm.principal.file.full_path
origin event.idm.read_only_udm.additional.fields
url_web_reputation event.idm.read_only_udm.security_result.confidence_score
is_island_private_access event.idm.read_only_udm.additional.fields
window_id event.idm.read_only_udm.principal.resource.id
compatibility_mode event.idm.read_only_udm.additional.fields
version event.idm.read_only_udm.metadata.product_version
userId principal.user.userid
topLevelUrl network.http.referral_url
ruleId security_result.rule_id
ruleName security_result.rule_name
Verdict" and "verdict security_result.action_details
sourceIp" and "publicIp principal.ip
verdictReason security_result.description
tabId", "urlWebReputation", "updatedDate", "processedDate", "service", "id", "deviceId", "frameUrl", "urlWebCategories", "isIslandPrivateAccess", "tenantId", "saasApplicationCategory", "saasApplicationName", "machineName", "details.navigationDetails.isIframe", "details.navigationDetails.is_iframe", "navigation_details.is_iframe", "matchedDevicePosture.domain", "matchedDevicePosture.workgroup", and "incognito additional.fields

Log delle modifiche

Visualizza il log delle modifiche per questo parser

Hai bisogno di ulteriore assistenza? Ricevi risposte dai membri della community e dai professionisti di Google SecOps.