Perplexity Enterprise offre des fonctionnalités complètes de journalisation d’audit qui permettent aux organisations de suivre les activités des utilisateurs et les actions administratives.
Les journaux d’audit enregistrent les requêtes de bout en bout, depuis les saisies utilisateur jusqu’aux étapes et réponses des agents, ainsi que toute modification des paramètres effectuée par un administrateur. Chaque entrée de journal enregistre des informations essentielles telles que le « type d’événement » (une action effectuée par un « utilisateur »), l’heure de l’événement et les informations de l’utilisateur, comme l’adresse e-mail et l’adresse IP. Vous trouverez un exemple ci-dessous.
Les journaux d’audit sont transmis en temps réel à un point de terminaison webhook que vous configurez via des requêtes HTTP POST, fournissant un enregistrement détaillé et chronologique de toutes les actions des utilisateurs et des événements système au sein de votre organisation.
Les journaux d’audit sont réservés aux organisations Enterprise comptant 50 sièges ou plus, ou disposant d’au moins un utilisateur Enterprise Max.
Activer les journaux d’audit
Pour activer les journaux d’audit pour votre organisation :
Accédez à vos Paramètres d’organisation dans le portail Perplexity Enterprise.
Faites défiler jusqu’à Paramètres du journal d’audit et Activer la journalisation d’audit
Configurez votre URL de webhook (doit être HTTPS) et cliquez sur Enregistrer
Pour plus de sécurité, vous pouvez définir un en-tête d’autorisation qui sera utilisé pour authentifier toutes les requêtes vers l’URL de votre webhook. À moins que vous ne spécifiiez un schéma d’autorisation, la valeur que vous saisissez sera envoyée sous forme de jeton Bearer
Authentification du webhook
Vous pouvez sécuriser votre point de terminaison webhook en utilisant l’une des méthodes suivantes :
Jeton Bearer
Veuillez fournir un jeton sans espaces. Le système ajoutera automatiquement Bearer à l’en-tête.
Exemple :
votre-jeton-secret-123Envoyé comme :
Authorization: Bearer your-secret-token-123
En-tête d’autorisation personnalisé
Veuillez fournir une valeur complète pour l’en-tête d’autorisation (elle doit contenir un espace).
Exemple :
Splunk xyz-token-456Envoyé comme :
Authorization: Splunk xyz-token-456
Livraison du webhook
Format de la requête
Les journaux d’audit sont transmis à votre URL de webhook via des requêtes HTTP POST avec :
Méthode :
POSTType de contenu :
application/json
En-tête d’authentification
Si vous avez configuré un jeton d’en-tête d’authentification, il sera inclus dans la requête :
Authorization: Bearer votre-jeton-123
Ou pour les en-têtes personnalisés :
Authorization: Splunk votre-jeton-456
Gestion des réponses
Votre point de terminaison webhook doit renvoyer des codes d’état HTTP 2xx pour indiquer une réception réussie.
Les codes d’état HTTP 4xx ou 5xx seront enregistrés comme des erreurs dans le système de Perplexity.
Schéma du journal d’audit
Tous les événements du journal d’audit suivent ce schéma standard :
Champ | Type | Obligatoire | Description |
| string | Oui | Identifiant unique de cet événement du journal d’audit (UUID v4 généré automatiquement) |
| string | Oui | Horodatage ISO 8601 au format RFC3339 (par exemple, |
| string | Oui | Type d’événement survenu (voir Types d’événements) |
| string | Oui | Adresse e-mail de l’utilisateur ayant effectué l’action |
| string | Oui | Adresse IP du client ayant initié l’action |
| string | Oui | Chaîne user agent du navigateur ou de l’application client |
| string | Non | Identifiant de session pour le suivi des actions associées (peut être nul) |
| objet | Non | Données supplémentaires spécifiques à l’événement (la structure varie selon le type d’événement) |
Types d’événements
Vous trouverez ci-dessous une définition de chaque type d’événement que vous pourriez rencontrer dans vos journaux d’audit :
Événements d’activité utilisateur
Type d’événement | Description |
| Utilisateur authentifié et connecté avec succès |
| L’utilisateur a soumis une requête de recherche |
| La réponse générée par l’IA a été renvoyée à l’utilisateur. |
| L’utilisateur a téléversé un fichier dans un espace. |
| L’utilisateur a téléchargé un fichier depuis un espace. |
Événements administratifs
Type d’événement | Description |
| Les paramètres de l’organisation ont été modifiés par un administrateur. |
| Action d’administration interne effectuée (réservé au personnel de Perplexity) |
| Plusieurs utilisateurs ont été ajoutés à l’organisation. |
| Plusieurs utilisateurs ont été retirés de l’organisation. |
Événements de l’agent
Type d’événement | Description |
| L’agent Comet a effectué une action automatisée |
Exemples de payload
L’entrée suivante est enregistrée lorsqu’un utilisateur envoie une requête de recherche :
{
"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": "Quelles sont les meilleures pratiques pour la sécurité des API ?"
}
}
Mise en forme spécifique à la plateforme
Webhooks Slack
Si l’URL de votre webhook est un webhook Slack (https://hooks.slack.com/…), les journaux d’audit sont automatiquement mis en forme selon le format Block Kit de Slack pour un affichage enrichi :
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Event Type:* Answer Generated"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*User:* [alice@company.com](<mailto:alice@company.com>)\n*IP Address:* 203.0.113.45\n*User Agent:* Mozilla/5.0...\n*Session ID:* query_xyz789\n*Timestamp:* 2024-01-15T14:25:18.987654+00:00"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "\n*Metadata:*\n• *answer:* API security best practices include...\n• *model:* claude-3-opus"
}
}
]
}
Remarque : Le formatage Slack inclut :
Le type d’événement est converti en majuscules initiales, sans les traits de soulignement.
Les valeurs de métadonnées sont tronquées à 500 caractères si elles dépassent cette limite.
La section des métadonnées totales est tronquée à 2 500 caractères pour respecter la limite de 3 000 caractères de Slack.
Les valeurs longues affichent un avis de troncature avec la longueur d’origine.
Collecteur d’événements HTTP Splunk (HEC)
Si votre en-tête d’authentification commence par « Splunk », les journaux d’audit sont automatiquement mis au format requis par 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": {}
}
}
Webhooks génériques
Pour toutes les autres URL de webhook, la charge utile JSON standard (comme indiqué dans la section Exemples de charges utiles) est envoyée sans mise en forme supplémentaire.
Scénarios courants
Suivi des sessions de recherche utilisateur
Pour suivre la session de recherche d’un utilisateur, de la requête à la réponse :
Événement de requête : L’utilisateur soumet une question
Contient
query_strdans les métadonnéesPossède un
session_idlié à la requête
Événement de réponse générée : l’IA renvoie une réponse
Même
session_idque l’événement de requêteContient le texte complet de
answeret lemodeld’IA utiliséPeut être corrélé à l’événement de requête via
session_id
Surveillance de l’accès aux fichiers
Pour suivre les fichiers consultés :
Événement de téléversement de fichier : L’utilisateur ajoute un fichier à un espace
Contient
filename,file_uuid,space_nameetspace_uuid
Événement de téléchargement de fichier : l’utilisateur télécharge le fichier
Le même
file_uuidpeut être utilisé pour établir une corrélation avec le téléversement.Indique qui a accédé au fichier et à quel moment
Audit des modifications de configuration
Pour suivre les modifications administratives :
Événement de mise à jour des paramètres de l’organisation :
L’administrateur modifie un paramètre
Contient la clé
keydu paramètre modifiéAffiche
old_valueetnew_valueà des fins de comparaison.Peut être filtré par
user_emailpour identifier les administrateurs ayant effectué des modifications.
Meilleures pratiques
Implémentation du point de terminaison webhook
Répondez rapidement : votre point de terminaison doit répondre en moins d’une seconde pour éviter les délais d’expiration.
Traiter de manière asynchrone : Mettre en file d’attente les journaux d’audit pour traitement et répondre immédiatement
Valider les charges utiles : Vérifier la structure et le contenu des charges utiles entrantes
Sécurisez votre point de terminaison : Utilisez HTTPS et validez l’en-tête d’authentification
Gérer les échecs avec élégance : Consigner les erreurs, mais ne renvoyez pas de réponses d’erreur susceptibles de provoquer des tentatives répétées
Conservation et analyse des données
Stockage à long terme : Conservez les journaux d’audit pour la conformité et l’analyse de la sécurité
Indexez les champs clés : Indexez
event_type,user_email,timestampetsession_idpour des requêtes efficacesCorréler les événements : Utilisez
session_idpour lier les événements associés (requêtes et réponses)Surveiller les schémas : Surveiller les schémas d’accès inhabituels ou les activités suspectes
Exporter régulièrement : Conservez des sauvegardes des journaux d’audit en dehors du système de webhooks.
Considérations de sécurité
Protégez les URL de webhook : Gardez votre URL de webhook et votre jeton d’authentification confidentiels
Rotation des jetons : Effectuez une rotation périodique de vos jetons d’authentification
Surveiller les échecs de webhook : Suivre les échecs de livraison pour détecter les problèmes de point de terminaison
Valider les sources IP : Envisagez de valider que les requêtes webhook proviennent des plages IP de Perplexity.
Traitement des données personnelles : Les journaux d’audit contiennent les adresses e-mail et les adresses IP des utilisateurs. Traitez-les conformément à vos politiques de confidentialité.
Foire aux questions
Puis-je utiliser cette fonctionnalité si j'ai moins de 50 sièges dans mon organisation ?
Si votre organisation compte moins de 50 sièges, vous pouvez mettre à niveau au moins un siège vers Enterprise Max pour accéder aux journaux d’audit de votre organisation.
J’ai activé la fonctionnalité par erreur et des sièges supplémentaires m’ont été facturés. Que puis-je faire ?
Si vous avez activé Audit Logs par erreur et que vous n’êtes pas prêt à passer à 50 sièges ou plus, nous pouvons ajuster la facturation de votre compte et annuler toute facturation supplémentaire ou tout paiement supplémentaire. Veuillez vous assurer d’avoir désactivé cette fonctionnalité, puis contactez-nous.
2. Saisissez votre URL de webhook et cliquez sur Enregistrer.
3. Pour plus de sécurité, vous pouvez définir un en-tête d'autorisation qui sera utilisé pour authentifier toutes les demandes à votre URL de webhook. À moins que vous ne spécifiiez un schéma d’autorisation, la valeur que vous saisissez sera envoyée sous forme de jeton Bearer.
Exemples de charge utile JSON pour les événements du journal d'audit
/* Requête */
{
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: "Quels ont été les résultats de notre dernier rapport de pentest ?"
}
}
/* Téléchargement de fichier */
{
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"
}
}
Foire aux questions
Puis-je utiliser cette fonctionnalité si j’ai moins de 50 sièges dans mon organisation ?
Si votre organisation compte moins de 50 sièges, vous pouvez mettre à niveau au moins un siège vers Enterprise Max pour accéder aux journaux d'audit de votre organisation.
J’ai activé la fonctionnalité par erreur et des sièges supplémentaires m’ont été facturés.
Si vous avez activé les journaux d'audit par erreur et que vous n'êtes pas prêt à passer à plus de 50 sièges, nous pouvons ajuster la facturation de votre compte et annuler toute facturation ou tout paiement supplémentaire. Veuillez vous assurer d’avoir désactivé cette fonctionnalité, puis contactez-nous.


