Raccogliere i log del servizio app di Azure

Supportato in:

Questo documento spiega come esportare i log di Azure APP Service in Google Security Operations utilizzando un account di archiviazione Azure. Il parser trasforma i log di Azure App Service formattati in formato JSON non elaborato in un modello UDM (Unified Data Model) strutturato. Estrae i campi pertinenti dai log non elaborati, esegue la pulizia e la normalizzazione dei dati e mappa le informazioni estratte nei campi UDM corrispondenti, restituendo infine un oggetto JSON conforme a UDM per ogni voce di log.

Prima di iniziare

Assicurati di soddisfare i seguenti prerequisiti:

  • Istanza Google SecOps
  • Un tenant Azure attivo
  • Accesso con privilegi ad Azure

Configura l'account di archiviazione di Azure

  1. Nella console Azure, cerca Storage accounts.
  2. Fai clic su + Crea.
  3. Specifica i valori per i seguenti parametri di input:
    • Abbonamento: seleziona l'abbonamento.
    • Gruppo di risorse: seleziona il gruppo di risorse.
    • Regione: seleziona la regione.
    • Rendimento: seleziona il rendimento (consigliato Standard).
    • Ridondanza: seleziona la ridondanza (consigliata GRS o LRS).
    • Nome account di archiviazione: inserisci un nome per il nuovo account di archiviazione.
  4. Fai clic su Review + create (Rivedi e crea).
  5. Controlla la panoramica dell'account e fai clic su Crea.
  6. Nella pagina Panoramica account di archiviazione, seleziona il sottomenu Chiavi di accesso in Sicurezza e networking.
  7. Fai clic su Mostra accanto a key1 o key2.
  8. Fai clic su Copia negli appunti per copiare la chiave.
  9. Salva la chiave in una posizione sicura per utilizzarla in un secondo momento.
  10. Nella pagina Panoramica dell'account di archiviazione, seleziona il sottomenu Endpoint in Impostazioni.
  11. Fai clic su Copia negli appunti per copiare l'URL dell'endpoint Blob service, ad esempio https://<storageaccountname>.blob.core.windows.net.
  12. Salva l'URL dell'endpoint in una posizione sicura per utilizzarlo in un secondo momento.

Come configurare l'esportazione dei log per i log di accesso di Azure AD

  1. Accedi al portale di Azure utilizzando il tuo account con privilegi.
  2. Vai a Servizi app e seleziona il servizio app richiesto in uso.
  3. Seleziona Monitoring > Log del servizio app.
  4. Attiva ON per Application Logging (blob).
  5. Seleziona Storage in Registrazione dei log del servizio web.
  6. Seleziona l'abbonamento e l'account di archiviazione.
  7. Definisci il periodo di conservazione e la quota in base ai tuoi requisiti.
  8. Attiva l'opzione ON per Messaggi di errore dettagliati.
  9. Attiva ON per Tracciamento delle richieste non riuscite.
  10. Fai clic su Salva.

Configurare i feed

Esistono due diversi punti di accesso per configurare i feed nella piattaforma Google SecOps:

  • Impostazioni SIEM > Feed
  • Hub dei contenuti > Pacchetti di contenuti

Configurare i feed da Impostazioni SIEM > Feed

Per configurare più feed per diversi tipi di log all'interno di questa famiglia di prodotti, consulta Configurare i feed per prodotto.

Per configurare un singolo feed:

  1. Vai a Impostazioni SIEM > Feed.
  2. Fai clic su Aggiungi nuovo feed.
  3. Nella pagina successiva, fai clic su Configura un singolo feed.
  4. Nel campo Nome feed, inserisci un nome per il feed, ad esempio Azure APP Service Logs.
  5. Seleziona Microsoft Azure Blob Storage come Tipo di origine.
  6. Seleziona Azure APP Service come Tipo di log.
  7. Fai clic su Avanti.
  8. Specifica i valori per i seguenti parametri di input:

    • URI di Azure: l'URL dell'endpoint blob.
      • ENDPOINT_URL/BLOB_NAME
        • Sostituisci quanto segue:
          • ENDPOINT_URL: l'URL dell'endpoint blob (https://<storageaccountname>.blob.core.windows.net)
          • BLOB_NAME: il nome del blob (ad esempio, <logname>-logs)
    • URI è un: seleziona il TIPO DI URI in base alla configurazione del flusso di log (Singolo file | Directory | Directory che include sottodirectory).
    • Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze di importazione.

    • Chiave condivisa: la chiave di accesso ad Azure Blob Storage.

    • 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 nella schermata Finalizza e poi fai clic su Invia.

Configurare i feed dall'hub dei contenuti

Specifica i valori per i seguenti campi:

  • URI di Azure: l'URL dell'endpoint blob.
    • ENDPOINT_URL/BLOB_NAME
      • Sostituisci quanto segue:
        • ENDPOINT_URL: l'URL dell'endpoint blob (https://<storageaccountname>.blob.core.windows.net)
        • BLOB_NAME: il nome del blob (ad esempio, insights-logs-<logname>)
  • URI è un: seleziona il TIPO DI URI in base alla configurazione del flusso di log (Singolo file | Directory | Directory che include sottodirectory).
  • Opzioni di eliminazione dell'origine: seleziona l'opzione di eliminazione in base alle tue preferenze di importazione.
  • Chiave condivisa: la chiave di accesso ad Azure Blob Storage.

Opzioni avanzate

  • Nome feed: un valore precompilato che identifica il feed.
  • Tipo di origine: metodo utilizzato per raccogliere i log in Google SecOps.
  • Spazio dei nomi dell'asset: spazio dei nomi associato al feed.
  • Etichette di importazione: etichette applicate a tutti gli eventi di questo feed.

Tabella di mappatura UDM

Campo log Mappatura UDM Logic
AppRoleInstance read_only_udm.principal.resource.product_object_id Mappatura diretta
AppRoleName read_only_udm.principal.resource.name Mappatura diretta
AppVersion read_only_udm.principal.resource.attribute.labels.value Mappatura diretta
Categoria read_only_udm.metadata.product_event_type Mappatura diretta
CIp read_only_udm.target.asset.ip Mappatura diretta
CIp read_only_udm.target.ip Mappatura diretta
ClientCity read_only_udm.principal.location.city Mappatura diretta
ClientCountryOrRegion read_only_udm.principal.location.country_or_region Mappatura diretta
ClientIP read_only_udm.principal.asset.ip Mappatura diretta
ClientIP read_only_udm.principal.ip Mappatura diretta
ClientStateOrProvince read_only_udm.principal.location.state Mappatura diretta
ClientType read_only_udm.additional.fields.value.string_value Mappatura diretta
ComputerName read_only_udm.principal.asset.hostname Mappatura diretta
ComputerName read_only_udm.principal.hostname Mappatura diretta
Cookie read_only_udm.principal.resource.attribute.labels.value Mappatura diretta
CsBytes read_only_udm.network.sent_bytes Rinominato da CsBytes
CsHost read_only_udm.additional.fields.value.string_value Mappatura diretta
CsMethod read_only_udm.network.http.method Mappatura diretta
CsUriQuery read_only_udm.principal.resource.attribute.labels.value Mappatura diretta
CsUriStem read_only_udm.additional.fields.value.string_value Mappatura diretta
CsUriStem read_only_udm.target.url Mappatura diretta
CsUsername read_only_udm.principal.user.user_display_name Mappatura diretta
EventIpAddress read_only_udm.principal.asset.ip Mappatura diretta
EventIpAddress read_only_udm.principal.ip Mappatura diretta
EventPrimaryStampName read_only_udm.additional.fields.value.string_value Mappatura diretta
EventStampName read_only_udm.additional.fields.value.string_value Mappatura diretta
EventStampType read_only_udm.additional.fields.value.string_value Mappatura diretta
Host read_only_udm.principal.asset.hostname Mappatura diretta
Host read_only_udm.principal.hostname Mappatura diretta
IKey read_only_udm.target.resource.attribute.labels.value Mappatura diretta
Istanza read_only_udm.additional.fields.value.string_value Mappatura diretta
Nome read_only_udm.additional.fields.value.string_value Mappatura diretta
Protocollo read_only_udm.additional.fields.value.string_value Mappatura diretta
Protocollo read_only_udm.network.application_protocol Mappato a HTTP se il protocollo è HTTP/1.1
Referer read_only_udm.network.http.referral_url Mappatura diretta
ResourceGUID read_only_udm.target.resource.product_object_id Rinominate da ResourceGUID
SDKVersion read_only_udm.additional.fields.value.string_value Mappatura diretta
SDKVersion read_only_udm.principal.resource.attribute.labels.value Mappatura diretta
SPort read_only_udm.principal.port Rinominato da SPort
ScBytes read_only_udm.network.received_bytes Rinominato da ScBytes
ScStatus read_only_udm.network.http.response_code Rinominato da ScStatus
TimeTaken read_only_udm.additional.fields.value.string_value Mappatura diretta
Tipo read_only_udm.additional.fields.value.string_value Mappatura diretta
Utente read_only_udm.principal.user.userid Mappatura diretta
UserAddress read_only_udm.principal.asset.ip Estratto da UserAddress se è un indirizzo IP valido
UserAddress read_only_udm.principal.ip Estratto da UserAddress se è un indirizzo IP valido
UserAgent read_only_udm.network.http.user_agent Mappatura diretta
UserDisplayName read_only_udm.principal.user.user_display_name Mappatura diretta
categoria read_only_udm.metadata.product_event_type Mappatura diretta
livello read_only_udm.security_result.severity Convertito in maiuscolo e rinominato dal livello
località read_only_udm.principal.location.name Mappatura diretta
operationName read_only_udm.additional.fields.value.string_value Mappatura diretta
record.properties.Protocol read_only_udm.additional.fields.value.string_value Mappatura diretta
record.properties.Result read_only_udm.security_result.summary Mappatura diretta
record.time read_only_udm.metadata.event_timestamp Analizzato come timestamp RFC 3339
resourceId read_only_udm.target.resource.attribute.labels.value Mappatura diretta
resourceId read_only_udm.target.resource.product_object_id Rinomato da resourceId
read_only_udm.metadata.event_type Determinato in base alla presenza di entità, target e protocollo. Imposta su NETWORK_HTTP se sono presenti entità, destinazione e Protocollo=HTTP. Impostato su NETWORK_CONNECTION se sono presenti l'entità e la destinazione. Imposta su STATUS_UPDATE se è presente solo l'entità. In caso contrario, imposta il valore su GENERIC_EVENT.

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