Vai al contenuto principale

Audit Logs

Ottieni visibilità sulle attività degli utenti con una registrazione di ogni azione per una rapida risposta agli incidenti, una conformità semplificata e trasparenza.

Scritto da Perplexity Support
Aggiornato oltre 2 mesi fa

Perplexity Enterprise offre funzionalità complete di registrazione degli audit che consentono alle organizzazioni di monitorare le attività degli utenti e le azioni amministrative.

I registri di controllo acquisiscono le query end-to-end tra input dell'utente, passaggi dell'agente e risposte, nonché eventuali modifiche alle impostazioni effettuate da un amministratore. Ogni voce di log registra informazioni essenziali, come il "tipo di evento" (un'azione eseguita da un "utente"), l'ora dell'evento e i dettagli dell'utente, quali e-mail e indirizzo IP. Di seguito è riportato un esempio.

I registri di controllo vengono inviati in tempo reale a un endpoint webhook configurato tramite richieste HTTP POST, fornendo una registrazione dettagliata e cronologica di tutte le azioni degli utenti e degli eventi di sistema all'interno dell'organizzazione.

I registri di controllo sono disponibili esclusivamente per le organizzazioni Enterprise con 50 o più postazioni oppure con almeno un utente Enterprise Max.

Abilitazione dei registri di controllo

Per abilitare i registri di controllo per la tua organizzazione:

  1. Vai alle Impostazioni dell’organizzazione nel portale Perplexity Enterprise.

  2. Scorri verso il basso fino a Impostazioni registro di controllo e Abilita registrazione di controllo

  3. Configura il tuo URL Webhook (deve essere HTTPS) e fai clic su Salva

  4. Per maggiore sicurezza, puoi impostare un Authorization Header che autenticherà tutte le richieste al tuo URL Webhook. A meno che non si specifichi uno schema di autorizzazione, il valore inserito verrà inviato come token Bearer

Autenticazione Webhook

Puoi proteggere il tuo endpoint webhook utilizzando:

Bearer token

Fornisci un token senza spazi. Il sistema anteporrà automaticamente Bearer all'intestazione.

  • Esempio: il-tuo-token-segreto-123

  • Inviato come: Authorization: Bearer your-secret-token-123

Intestazione di autorizzazione personalizzata

Fornisci un valore completo per l'intestazione di autorizzazione (deve contenere uno spazio).

  • Esempio: Splunk xyz-token-456

  • Inviato come: Authorization: Splunk xyz-token-456

Consegna webhook

Formato richiesta

I log di audit vengono inviati all'URL del tuo webhook tramite richieste HTTP POST con:

  • Metodo: POST

  • Tipo di contenuto: application/json

Intestazione di autenticazione

Se hai configurato un token di intestazione per l’autenticazione, verrà incluso nella richiesta:

Authorization: Bearer your-token-123

Oppure, per intestazioni personalizzate:

Authorization: Splunk your-token-456

Gestione delle risposte

  • Il tuo endpoint webhook dovrebbe rispondere con codici di stato HTTP 2xx per indicare la corretta ricezione.

  • I codici di stato HTTP 4xx o 5xx verranno registrati come errori nel sistema di Perplexity.

Schema del registro di controllo

Tutti gli eventi del registro di controllo seguono questo schema standard:

Campo

Tipo

Obbligatorio

Descrizione

uuid

stringa

Identificatore univoco per questo evento del registro di controllo (UUID v4 generato automaticamente)

timestamp

stringa

Timestamp ISO 8601 in formato RFC3339 (es. 2024-01-15T10:30:45+00:00)

event_type

stringa

Tipo di evento che si è verificato (vedi Event Types)

user_email

stringa

Indirizzo email dell’utente che ha eseguito l’azione

ip_address

stringa

Indirizzo IP del client che ha avviato l’azione

user_agent

stringa

Stringa user agent del browser o dell’applicazione client

session_id

stringa

No

Identificatore di sessione per il tracciamento delle azioni correlate (può essere null)

metadati

oggetto

No

Dati aggiuntivi specifici dell’evento (la struttura varia in base al tipo di evento)

Tipi di eventi

Di seguito è riportata una definizione per ciascun tipo di evento che potresti trovare nei tuoi Audit Logs:

Eventi attività utente

Tipo di evento

Descrizione

login

Utente autenticato e connesso correttamente

query

L'utente ha inviato una query di ricerca

answer_generated

La risposta generata dall’IA è stata restituita all’utente.

file_upload

L'utente ha caricato un file in uno spazio

file_download

L'utente ha scaricato un file da uno spazio

Eventi amministrativi

Tipo di evento

Descrizione

organization_settings_update

Le impostazioni dell'organizzazione sono state modificate da un amministratore

admin_activity

Azione amministrativa interna eseguita (per uso del personale Perplexity)

bulk_member_add_batch

Sono stati aggiunti più utenti all'organizzazione

bulk_member_remove_batch

Più utenti sono stati rimossi dall’organizzazione

Eventi agente

Tipo di evento

Descrizione

comet_agent_action

L'agente Comet ha eseguito un'azione automatizzata

Esempi di payload

La seguente voce viene registrata quando un utente invia una query di ricerca:

{
"uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"timestamp": "2024-01-15T14:25:12.345678+00:00",
"event_type": "query",
"user_email": "[alice@company.com](<mailto:alice@company.com>)",
"ip_address": "203.0.113.45",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
"session_id": "query_xyz789",
"metadata": {
"query_str": "Quali sono le migliori pratiche per la sicurezza delle API?"
}
}

Formattazione specifica per piattaforma

Webhook di Slack

Se l'URL del tuo webhook è un webhook di Slack ([https://hooks.slack.com/](<https://hooks.slack.com/>)), i log di audit vengono formattati automaticamente utilizzando il formato Block Kit di Slack per una visualizzazione avanzata:

{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Tipo di evento:* Risposta generata"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Utente:* [alice@company.com](<mailto:alice@company.com>)\n*Indirizzo IP:* 203.0.113.45\n*User Agent:* Mozilla/5.0...\n*ID sessione:* query_xyz789\n*Timestamp:* 2024-01-15T14:25:18.987654+00:00"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "\n*Metadati:*\n• *risposta:* Le best practice per la sicurezza delle API includono...\n• *modello:* claude-3-opus"
}
}
]
}

Nota: la formattazione di Slack include:

  • Il tipo di evento viene convertito in maiuscole iniziali con le sottolineature rimosse

  • I valori dei metadati vengono troncati a 500 caratteri se superano questo limite.

  • La sezione dei metadati totali è stata ridotta a 2.500 caratteri per rispettare il limite di 3.000 caratteri di Slack.

  • I valori lunghi mostrano un avviso di troncamento con la lunghezza originale.

Raccoglitore di eventi HTTP di Splunk (HEC)

Se l'intestazione di autenticazione inizia con "Splunk", i log di audit vengono automaticamente formattati nel formato richiesto da Splunk:

{
"event": {
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"timestamp": "2024-01-15T10:30:45.123456+00:00",
"event_type": "login",
"user_email": "[user@company.com](<mailto:user@company.com>)",
"ip_address": "192.168.1.100",
"user_agent": "Mozilla/5.0...",
"session_id": "session-abc-123",
"metadata": {}
}
}

Webhook generici

Per tutti gli altri URL di webhook, il payload JSON standard (come mostrato nella sezione Esempi di payload) viene inviato senza formattazione aggiuntiva.

Scenari comuni

Monitoraggio delle sessioni di ricerca utente

Per monitorare la sessione di ricerca di un utente, dalla domanda alla risposta:

  1. Query Event: l’utente invia una domanda

    • Contiene query_str nei metadati

    • Ha un session_id che la collega alla query

  2. Evento di risposta generata: l’IA restituisce una risposta

    • Stesso session_id dell’evento di query

    • Contiene il testo completo della answer e il model di IA utilizzato.

    • Può essere correlato all’evento di query tramite session_id

Monitoraggio accessi ai file

Per monitorare quali file vengono consultati:

  1. Evento di caricamento file: l'utente aggiunge un file a uno spazio

    • Contiene filename, file_uuid, space_name e space_uuid

  2. Evento di download file: l'utente scarica il file

    • Lo stesso file_uuid può essere utilizzato per la correlazione con il caricamento

    • Mostra chi ha avuto accesso al file e quando

Verifica delle modifiche alla configurazione

Per monitorare le modifiche amministrative:

Evento di aggiornamento delle impostazioni dell’organizzazione:

L'amministratore modifica un'impostazione

  • Contiene la key dell’impostazione modificata

  • Mostra old_value e new_value per il confronto

  • Può essere filtrato per user_email per monitorare quali amministratori hanno apportato modifiche

Buone pratiche

Implementazione dell'endpoint webhook

  • Rispondi rapidamente: il tuo endpoint deve rispondere entro 1 secondo per evitare timeout

  • Elabora in modo asincrono: accoda i log di audit per l'elaborazione e rispondi immediatamente

  • Convalida payload: verifica la struttura e il contenuto dei payload in arrivo

  • Proteggi il tuo endpoint: utilizza HTTPS e convalida l’intestazione di autenticazione

  • Gestisci gli errori con cura: registra gli errori ma non restituire risposte di errore che potrebbero causare nuovi tentativi

Conservazione e analisi dei dati

  • Archivia a lungo termine: conserva i log di controllo per la conformità e l'analisi della sicurezza

  • Indicizza i campi chiave: indicizza event_type, user_email, timestamp e session_id per query efficienti

  • Correla gli eventi: utilizza session_id per collegare eventi correlati (query e risposte)

  • Monitora i modelli: Tieni d'occhio modelli di accesso insoliti o attività sospette

  • Esporta regolarmente: mantieni i backup dei log di controllo al di fuori del sistema webhook

Considerazioni sulla sicurezza

  • Proteggi gli URL dei webhook: mantieni riservati l'URL del webhook e il token di autenticazione

  • Ruota i token: ruota periodicamente i token di autenticazione

  • Monitora gli errori dei webhook: monitora le consegne non riuscite per rilevare problemi agli endpoint

  • Convalida le origini IP: Valuta di verificare che le richieste webhook provengano dagli intervalli IP di Perplexity

  • Gestione PII: I log di audit contengono email e indirizzi IP degli utenti; gestirli in conformità con le proprie politiche sulla privacy.

Domande frequenti

Posso utilizzare questa funzionalità se ho meno di 50 postazioni nella mia organizzazione?

Se la tua organizzazione ha meno di 50 postazioni, puoi aggiornare almeno una postazione a Enterprise Max per accedere ai registri di controllo della tua organizzazione.

Ho attivato la funzionalità per errore e mi sono state addebitate postazioni aggiuntive. Cosa posso fare?

Se hai attivato Audit Logs per errore e non sei pronto per passare a 50+ postazioni, possiamo adeguare la fatturazione del tuo account e annullare eventuali addebiti o pagamenti aggiuntivi. Assicurati di aver disattivato questa funzionalità e contattaci.

2. Inserisci il tuo URL del webhook e fai clic su Salva.

3. Per una maggiore sicurezza, puoi impostare un header di autorizzazione che verrà utilizzato per autenticare tutte le richieste al tuo URL del webhook. A meno che non si specifichi uno schema di autorizzazione, il valore inserito verrà inviato come token Bearer.

Esempi di payload JSON per eventi di registro di controllo

/* Query */
{
event_type: "query"
timestamp: 2025-02-20T09:05:31
user_email: "john@perplexity.ai"
ip_address: "162.229.229.229"
user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
metadata: {
query: "Quali sono stati i risultati del nostro più recente rapporto di pentest?"
}
}

/* Caricamento file */
{
event_type: "file_upload"
timestamp: 2025-02-20T09:05:31
user_email: "john@perplexity.ai"
ip_address: "162.229.229.229"
user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
metadata: {
file_name: "soc2_report.pdf"
file_uuid: "XXXXX"
space_name: "Security Reports"
space_uuid: "YYYYY"
}
}

Domande frequenti

Posso utilizzare questa funzionalità se ho meno di 50 postazioni nella mia organizzazione?

Se la tua organizzazione ha meno di 50 postazioni, puoi aggiornare almeno una postazione a Enterprise Max per accedere ai registri di controllo della tua organizzazione.

Ho attivato la funzionalità per errore e mi sono state addebitate postazioni aggiuntive.

Se hai attivato i registri di controllo per errore e non sei pronto per passare a 50 o più postazioni, possiamo modificare la fatturazione del tuo account e annullare eventuali addebiti o pagamenti aggiuntivi. Assicurati di aver disattivato questa funzionalità e contattaci.