Condividi tramite


Cercare contenuto in un set di revisione con esplora set di revisione avanzato (anteprima)

Esplora set di revisione avanzato (anteprima) in Microsoft Purview eDiscovery consente ai revisori di eseguire analisi dei Big Data in tempo reale sul contenuto del set di revisione usando un subset definito di Linguaggio di query Kusto (KQL). Con Advanced Review Set Explorer (anteprima), è possibile eseguire query, filtrare e visualizzare i dati dei set di revisione direttamente nel portale di Microsoft Purview senza modificare il contenuto sottostante. Le query vengono eseguite sul set completo di elementi indicizzati e restituiscono risultati tabulari o visualizzazioni del grafico.

Usare advanced review set explorer (anteprima) per:

  • Identificare i tipi di elementi principali, i modelli spot e trovare le tendenze all'interno del set di recensioni.
  • Creare query avanzate con filtri complessi, estrazione di testo basata su criteri e analisi del formato dei dati.
  • Analizzare e trovare informazioni chiave specifiche per il caso o l'organizzazione.
  • Visualizzare i risultati delle query usando i grafici per una conoscenza completa dei dati del set di revisione.

Consiglio

Introduzione a Microsoft Security Copilot per esplorare nuovi modi per lavorare in modo più intelligente e veloce usando la potenza dell'IA. Altre informazioni su Microsoft Security Copilot in Microsoft Purview.

Aprire advanced review set explorer (anteprima)

Per aprire advanced review set explorer (anteprima), completare la procedura seguente:

  1. Passare al portale di Microsoft Purview e accedere con le credenziali per un account utente a cui sono assegnate le autorizzazioni di eDiscovery.
  2. Selezionare la scheda della soluzione eDiscovery e quindi selezionare Case nel riquadro di spostamento a sinistra.
  3. Selezionare un caso e quindi selezionare la scheda Set di revisione .
  4. Selezionare un set di revisione e quindi selezionare la scheda Generatore query avanzato (anteprima).

Da qui è possibile scrivere ed eseguire query KQL direttamente sui dati del set di revisione.

Consiglio

Se si preferisce un approccio visivo senza codice al filtro del contenuto del set di revisioni, vedere Cercare contenuto in un set di revisione con il generatore di condizioni di query.

Funzionamento di Advanced Review Set Explorer (anteprima) in un set di revisione

Ogni query viene eseguita sui dati del set di revisione completo e restituisce:

  • Elenco tabulare di elementi corrispondenti oppure
  • Visualizzazione del grafico, a seconda della query.

Le query seguono la sintassi della pipeline KQL standard, in cui ogni riga si basa sui risultati del passaggio precedente. Il portale aggiunge automaticamente il nome della ReviewSetTable tabella come prima riga. Ogni riga di query successiva deve iniziare con \|.

Ad esempio:

ReviewSetTable
| where SubjectTitle has "Case"
| summarize count() by FileClass

Nota

Tutte le query in Advanced Review Set Explorer (anteprima) vengono eseguite sugli elementi indicizzati del set di revisione corrente. Non è necessario specificare un nome di tabella. Il set di revisione funge da origine dati predefinita.

Procedure consigliate

  • Iniziare con where i filtri per restringere i dati prima di usare summarize o render.
  • Usare take per convalidare la logica di query prima di eseguire aggregazioni complete.
  • Evitare modelli regex eccessivamente ampi su set di revisione di grandi dimensioni.
  • Usare where isnotempty(ColumnName) per escludere gli elementi con valori vuoti per una proprietà, che consente di evitare righe vuote impreviste nei risultati.

Altre considerazioni

Advanced review set explorer (anteprima) non supporta tutti gli operatori e le proprietà Kusto. Quando si creano query, tenere presenti le considerazioni seguenti:

  • Le query sono di sola lettura e non modificano il contenuto del set di revisione. Per altre informazioni sull'uso dei set di revisioni, vedere Gestire i set di revisione in eDiscovery.
  • I risultati riflettono lo stato indicizzato corrente del set di revisione. Se si aggiungono altri dati al set di revisione, la query potrebbe restituire risultati diversi.
  • Non tutti i tipi di file sono eseguibili su query. Per altre informazioni, vedere Tipi di file supportati in eDiscovery.
  • Se la query restituisce più di 10.000 risultati, restituisce solo i primi 10.000 risultati. Modificare la query per limitare i risultati.

Per informazioni sulla sintassi e sui riferimenti a Kusto, vedere gli articoli seguenti:

Operatori di base supportati

Consiglio

Per un elenco completo delle proprietà disponibili che è possibile usare nelle query, vedere Campi dei metadati del documento in eDiscovery.

Dove:

Usare l'operatore where per filtrare gli elementi in base a metadati come oggetto, parole chiave, classe di elementi, date o partecipanti.

Nell'esempio seguente il set di revisione viene filtrato in modo da restituire solo gli elementi il cui oggetto contiene il testo "Day".

ReviewSetTable
| where SubjectTitle has "Day"

Questa query filtra il set di revisione in modo da includere tutti gli elementi correlati al calendario la cui classe ItemClass inizia con IPM.Appointment, che copre gli appuntamenti standard e le classi estese come IPM.AppointmentSnapshot.SkypeTeams.Call.

ReviewSetTable
| where ItemClass startswith "IPM.Appointment"

Project

Usare project per restituire solo le proprietà di cui si è interessati. Ad esempio, la query seguente esegue due azioni:

  • Filtra gli elementi in base al testo dell'oggetto: la where SubjectTitle has "Day" clausola limita i risultati solo agli elementi il cui oggetto SubjectTitle contiene la parola "Day".
  • Proietta una singola colonna: la project SubjectTitle clausola restituisce quindi solo la proprietà SubjectTitle per gli elementi filtrati, rimuovendo tutte le altre colonne dall'output.
ReviewSetTable
| where SubjectTitle has "Day"
| project SubjectTitle

Extend

L'operatore extend aggiunge una o più colonne calcolate ai risultati della query creando nuovi valori derivati dai campi esistenti senza modificare i dati sottostanti.

L'esempio seguente classifica gli elementi del set di revisione in quattro categorie di dimensioni, Small (<1MB),Medium (1-5MB),Medium-Large (5-10MB) e Large (>10MB), creando una nuova colonna SizeCategory usando la case() funzione e quindi aggregando il numero di elementi in ogni categoria tramite summarize. Consente agli investigatori di comprendere rapidamente la distribuzione delle dimensioni dei file nel set di revisione per la valutazione dei rischi o la definizione delle priorità.

ReviewSetTable
| extend SizeCategory = case(Size > 10485760, "Large (>10MB)", Size >= 5242880 and Size <= 10485760, "Medium-Large (5–10MB)", Size >= 1048576 and Size < 5242880, "Medium (1–5MB)", "Small (<1MB)")
| summarize count() by SizeCategory

Riepiloga

L'operatore summarize aggrega i dati applicando funzioni come count(), sum()o avg()e raggruppa i risultati in base alle colonne specificate.

Nell'esempio seguente vengono conteggiati gli elementi raggruppati in base a SubjectTitle per gli elementi contenenti la parola "Day".

ReviewSetTable
| where SubjectTitle has "Day"
| summarize count() by SubjectTitle

Grafico a barre di rendering, grafico a colonne di rendering, grafico a torta di rendering

L'operatore render barchart accetta i risultati tabulari della query e li visualizza come grafico a barre. In questo modo è più semplice visualizzare la distribuzione o il confronto dei valori aggregati.

L'esempio seguente esegue il rendering dei conteggi dei titoli del soggetto come grafico a barre.

ReviewSetTable
| where SubjectTitle has "Day"
| summarize count() by SubjectTitle
| render barchart

Accetta (limite)

L'operatore take limita l'output della query a un numero specificato di righe. Restituisce solo i primi n risultati del set di dati. L'operatore limit è un sinonimo di take e può essere usato in modo intercambiabile.

Nell'esempio seguente vengono restituiti solo i primi 10 elementi corrispondenti, in modo da poter convalidare la logica di query o il contenuto del controllo spot prima di eseguire una query completa. Questo approccio è utile quando si gestiscono set di revisione di grandi dimensioni o filtri complessi, in cui i risultati possono richiedere più tempo per il calcolo e il caricamento senza take limitare l'output.

ReviewSetTable
| where SubjectTitle has "day"
| project SubjectTitle, SenderDomain, Custodian, Size
| take 10

Sorta

L'operatore sort ordina i risultati della query in base a una o più colonne specificate in ordine crescente o decrescente.

La query di esempio seguente calcola il numero totale di elementi per ogni NativeFileExtension nel set di revisione usando summarize count(). Quindi, ordina i gruppi di estensioni in ordine decrescente del numero di elementi in modo da poter vedere quali tipi di file sono più diffusi.

ReviewSetTable
| summarize ItemCount = count() by NativeFileExtension
| sort by ItemCount desc

Distinct

L'operatore distinct restituisce valori univoci per le colonne specificate rimuovendo righe duplicate dai risultati della query.

L'esempio seguente usa distinct per rimuovere i duplicati in modo da visualizzare solo responsabili univoci e quindi usa sort by Custodian asc per ordinarli in ordine alfabetico, semplificando l'analisi o l'esportazione per la creazione di report.

ReviewSetTable
| distinct Custodian
| sort by Custodian asc

Conteggio

L'operatore count restituisce il numero totale di righe nel set di risultati della query, in modo da poter vedere rapidamente quanti elementi sono presenti nel set.

Nell'esempio seguente viene conteggiato il numero di titoli di soggetto univoci che contengono la parola "Day".

ReviewSetTable
| where SubjectTitle has "Day"
| summarize by SubjectTitle
| count

Inizio

L'operatore top restituisce le prime n righe dai risultati della query, ordinate in base a una o più colonne specificate. Usarlo per ottenere i valori più alti o più bassi in base ai criteri di ordinamento.

L'esempio seguente ottiene i primi cinque elementi più grandi del set di revisioni.

ReviewSetTable
| top 5 by Size desc

Bin

La bin() funzione arrotonda un valore datetime o numerico al multiplo più vicino di una dimensione del contenitore specificata. Usare questa funzione per raggruppare i dati in intervalli di tempo o intervalli numerici, ad esempio bucket orari o intervalli di dimensioni.

L'esempio seguente raggruppa gli elementi nella revisione impostati in bucket di dimensioni di 1 MB usando bin(Size, 1048576), conta il numero di elementi inclusi in ogni bucket con summarize count()e quindi ordina i bucket in ordine crescente in modo da poter visualizzare la distribuzione delle dimensioni dei file dal più piccolo al più grande.

ReviewSetTable
| summarize ItemCount = count() by bin(Size, 1048576)
| sort by bin(Size, 1048576) asc

Scenari comuni

Gli scenari seguenti illustrano in che modo le query Kusto in Advanced Review Set Explorer (anteprima) consentono di analizzare e comprendere meglio i dati del set di revisioni.

Scenario 1: Comunicazioni tra due utenti

Trova gli elementi scambiati esclusivamente tra due utenti specifici, John e David, senza altri partecipanti. Questa query isola le comunicazioni dirette uno-a-uno e mostra solo tre proprietà: titolo dell'oggetto, mittente e destinatari.

ReviewSetTable
| where isnotempty(Participants)
| extend ParticipantEmails = extract_all(@"\<(\[^\>\]+)\>", tostring(Participants))
| extend ParticipantCount = array_length(ParticipantEmails)
| where ParticipantCount == 2
| where ParticipantEmails has "John@contoso.com" and ParticipantEmails has "David@contoso.com"
| project SubjectTitle, SenderAuthor, Recipients

Scenario 2: Messaggi di posta elettronica inviati esternamente

Trovare tutti gli elementi del set di revisione che includono almeno un destinatario esterno (all'esterno dell'organizzazione contoso.com) ed elencare gli indirizzi di posta elettronica esterni per ogni elemento.

ReviewSetTable
| where isnotempty(Recipients)
| extend Emails = extract_all(@"\<(\[^\>\]+)\>", tostring(Recipients))
| mv-expand Email = Emails
| extend Email = tostring(Email)
| where Email !contains "@contoso.com"
| summarize ExternalRecipients = make_set(Email) by ImmutableId, SubjectTitle

Scenario 3: Identificare i modelli di data e ora nel set di revisione

La visualizzazione dei dati nel tempo consente agli investigatori di identificare picchi o anomalie nella comunicazione o nella creazione di documenti, ad esempio un improvviso aumento dei messaggi di posta elettronica che potrebbero essere correlati a un evento imprevisto noto. Le visualizzazioni trimestrali sono allineate ai cicli aziendali, semplificando la correlazione dei risultati con i periodi di report finanziari, i controlli interni o le modifiche dei criteri.

Nell'esempio seguente viene analizzato il modo in cui gli elementi del set di revisione vengono distribuiti nel tempo raggruppando gli elementi per anno e trimestre e visualizzando i risultati come istogramma. Filtra gli elementi in base all'intervallo di date, estrae l'anno e il trimestre dal campo Date di ogni elemento, conta gli elementi in ogni combinazione anno-trimestre, crea un'etichetta leggibile (ad esempio, Q2 2024) ed esegue il rendering dei risultati come istogramma.

ReviewSetTable
| where Date > datetime(2015-01-01) and Date < datetime(2025-08-31)
| extend Year = datetime_part("year", Date), Quarter = datetime_part("quarter", Date)
| summarize EventCount = count() by Year, Quarter
| sort by Year asc, Quarter asc
| extend QuarterLabel = strcat("Q", tostring(Quarter), " ", tostring(Year))
| project QuarterLabel, EventCount
| render columnchart

Scenario 4: Visualizzare i tipi di messaggio di Microsoft Teams nel set di revisioni

L'esempio seguente classifica e visualizza i tipi di messaggio di Microsoft Teams nella revisione impostata per classe elemento, consentendo di comprendere la distribuzione di diversi formati di messaggio.

ReviewSetTable
| where ItemClass startswith "IPM.SkypeTeams.Message."
| project SubjectTitle, Date, SenderAuthor, FileClass, ItemClass, InternetMessageId
| summarize ItemCount = count() by ItemClass
| sort by ItemCount desc
| render piechart

Usare regex in Advanced Review Set Explorer (anteprima)

Advanced review set explorer (anteprima) supporta espressioni regolari (regex) per una corrispondenza efficace dei criteri nei campi di testo. Il supporto di Regex consente di cercare sequenze complesse di caratteri, ad esempio combinazioni alfanumeriche, caratteri speciali o modelli strutturati, oltre alla semplice corrispondenza di parole chiave. Usare regex per:

  • Identificare gli elementi con formati specifici, ad esempio ID, codici o token strutturati.
  • Rilevare i modelli che gli operatori standard amano has o startswith non possono acquisire.
  • Eseguire filtri avanzati per la conformità o le indagini forensi.

Suggerimenti per la scrittura di regex in KQL

  • Barre rovesciate di escape correttamente (\\) quando necessario.
  • Usare ancoraggi (^ per l'inizio, $ per la fine) per il posizionamento esatto.
  • Modelli di test incrementali per evitare corrispondenze eccessivamente ampie.
  • Combinare con altri operatori (ad esempio, and, or) per query precise.
  • Riferimento: sintassi Regex.

Sintassi

Usare l'operatore matches regex nella where clausola :

where <PropertyName> matches regex "<pattern>"

Esempio: Trovare una corrispondenza con un modello complesso in Parole chiave

ReviewSetTable
| where Keywords matches regex "\\w{10}\\d{10}\\W{10}"
| project SubjectTitle, CompoundPath, Date, SenderAuthor, FileClass, ItemClass, InternetMessageId
  • Filtra gli elementi in cui la proprietà Keywords contiene:

    • 10 caratteri di parola (\w)
    • seguito da 10 cifre (\d)
    • seguito da 10 caratteri non di parole (\W)
  • Restituisce i campi dei metadati chiave specificati per la revisione.

Correggere gli errori di sintassi KQL comuni

Quando si creano query in Advanced Review Set Explorer (anteprima), potrebbero verificarsi errori di sintassi.

Nella tabella seguente sono elencati gli errori comuni e come risolverli:

Error Causa Correzione
sort l'operatore richiede un nome di colonna Uso sort senza specificare per cosa ordinare. Aggiungere un nome di colonna dopo sort by. Ad esempio, sort by Date desc.
Previsto ) o , Parentesi di chiusura mancante o argomenti di funzione non corretti. Verificare che tutte le parentesi aperte abbiano parentesi di chiusura corrispondenti e che gli argomenti della funzione siano separati da virgole.
Funzione sconosciuta Uso di un nome di funzione non supportato o scritto in modo errato. Verificare il nome della funzione rispetto alla documentazione KQL. Gli esempi comuni includono count(), tostring()e datetime().
Previsto token: \ | A una riga di query manca l'operatore pipe all'inizio. Assicurarsi che ogni riga dopo ReviewSetTable inizi con \ | .
Colonna non trovata Riferimento a un nome di proprietà che non esiste nello schema del set di revisione. Controllare i nomi di colonna disponibili nel set di revisione. I nomi delle proprietà fanno distinzione tra maiuscole e minuscole.
summarize richiede una by clausola Uso summarize con un'aggregazione ma senza colonna di raggruppamento. Aggiungere una by clausola con una o più colonne. Ad esempio, summarize count() by FileClass.
Fine imprevista della query La query è incompleta o ha una pipe finale senza operatore. Rimuovere eventuali finali \ | alla fine della query o aggiungere l'operatore previsto dopo di essa.

Nota

Alcuni set di revisione meno recenti potrebbero non supportare determinate proprietà KQL se tali proprietà non erano disponibili quando è stato creato il set di revisione e sono stati generati dati. L'esecuzione di query su una proprietà non supportata in un set di revisione precedente genera un errore di colonna non trovato. Per risolvere questo errore, creare un nuovo set di revisione e usare il processo Aggiungi per esaminare il set per rigenerare i dati con le proprietà supportate più recenti.