Comment activer l'audit du journal d'activité dans ownCloud Enterprise
L'activation du flux d'activité des fichiers d'ownCloud ne génère pas, à elle seule, un journal d'audit pour l'administrateur. Pour ownCloud Server Enterprise, le composant pertinent est l' application d'audit réservée aux entreprises . Celle-ci enregistre un plus large éventail d'actions des utilisateurs et des administrateurs dans le système de journalisation du serveur, où vous pouvez acheminer ces enregistrements vers un fichier dédié et, si nécessaire, vers une plateforme d'analyse des journaux.
Ce guide décrit le déploiement classique d'ownCloud Server documenté pour la version 11.0. Les intitulés des menus et les méthodes de configuration peuvent varier selon la version et le packaging. ownCloud Infinite Scale (oCIS) utilise un service d'audit distinct ; par conséquent, ces instructions relatives au serveur ne s'appliquent pas à un déploiement oCIS.
Qu’enregistre l’audit d’ownCloud ?
L'application d'audit peut consigner des événements tels que les connexions et déconnexions d'utilisateurs, la création, la suppression et le déplacement de fichiers, les opérations sur la corbeille et les versions, les modifications de partage et d'autorisation, la gestion des groupes et des utilisateurs, les commentaires, les étiquettes, les modifications des paramètres utilisateur, l'activation ou la désactivation d'applications, l'usurpation d'identité et l'exécution de commandes OCC. Les entrées comprennent des champs communs tels que l'heure, l'utilisateur, les détails de la requête, l'adresse distante, l'application, le message et un nom d'action unique. Les champs exacts varient selon l'action.
L'audit est différent de l'application Activité. Activité est un flux d'événements liés aux fichiers et dossiers visible par l'utilisateur. L'audit est destiné à la vérification administrative, aux processus de conformité et à l'analyse des événements liés à la sécurité. Activez l'application Audit d'entreprise lorsque vous avez besoin d'un enregistrement côté serveur ; utilisez Activité lorsque les utilisateurs ont besoin d'un flux pratique des modifications apportées au contenu.
Avant d'activer l'audit
Vérifiez que le déploiement est bien ownCloud Server Enterprise et que l'application d'audit est disponible pour l'instance.
Utilisez un compte administrateur ownCloud pour activer l'application. Un administrateur système peut également avoir besoin d'un accès shell ou conteneur pour configurer la journalisation.
Choisissez un emplacement dédié pour les journaux, disposant d'un espace disque suffisant. Vérifiez que le serveur web ou le conteneur peut y écrire et déterminez qui est autorisé à les consulter.
Définissez une politique de conservation et de rotation avant d'activer un flux d'audit à volume élevé. Les enregistrements d'audit peuvent inclure les identifiants utilisateur, les adresses IP, les chemins d'accès aux fichiers, les informations client et les métadonnées de partage.
Étape 1 : Activer l’application d’audit
Connectez-vous en tant qu'administrateur ownCloud et ouvrez la section Applications dans l'interface d'administration. Recherchez l'option Audit et activez-la. Si l'application est absente, vérifiez votre licence Enterprise, la version de votre serveur et consultez la Marketplace ownCloud ou le support technique de votre fournisseur pour trouver le package d'application compatible. L'application Activité standard ne peut pas être utilisée comme solution de remplacement.
Vue d'illustration des applications : la ligne Audit est activée, ce qui constitue la première étape pour activer l'application d'audit d'entreprise.
Étape 2 : Acheminer les messages d’audit vers un fichier dédié
ownCloud recommande de séparer les messages d'audit du journal général du serveur. Un fichier dédié facilite la configuration des autorisations, de la conservation et des règles de collecte des données d'audit. La documentation actuelle du serveur 11.0 fournit un exemple de variable d'environnement de conteneur. Adaptez la destination à un chemin existant dans votre déploiement et accessible en écriture par le service ownCloud :
Cette condition redirige les messages de l' admin_auditapplication vers le fichier spécifié. Dans l'exemple documenté, le routage des messages d'audit vers un fichier distinct contourne le filtre global de niveau de journalisation et enregistre les messages quel que soit leur niveau. Le chemin indiqué est associé à un volume de données monté dans Docker ; il s'agit d'un exemple et non d'un chemin universel. Enregistrez la modification de l'environnement à l'aide de la méthode de configuration de votre déploiement et redémarrez ou recréez le service uniquement lorsque votre processus d'orchestration de conteneurs l'exige.
Pour les installations configurées via config.phpownCloud, la documentation de configuration de l'application ownCloud indique également la log.conditionsclé. Adaptez le chemin d'accès au répertoire de données réel de votre hôte et conservez les entrées de configuration existantes au lieu de remplacer l'ensemble du tableau :
Si vous conservez les données d'audit dans le journal standard d'ownCloud au lieu de les acheminer séparément, le guide d'audit d'ownCloud indique que le niveau de journalisation du serveur doit être défini sur 1INFO ou 0DEBUG, faute de quoi les messages d'audit risquent de ne pas être enregistrés. L'utilisation de fichiers séparés permet de s'affranchir du niveau de journalisation global, mais ne dispense pas de la surveillance de l'espace disque disponible.
Vue illustrative de la configuration du paramètre documenté OWNCLOUD_LOG_CONDITIONS ; utilisez le chemin valide et accessible en écriture dans votre propre déploiement.
Étape 3 : Vérifier qu’un événement réel est enregistré dans le fichier
Après avoir activé l'application et configuré la journalisation, générez un événement contrôlé autorisé par votre politique (par exemple, créez ou supprimez un fichier de test temporaire dans un compte de test dédié). Consultez ensuite le journal d'audit configuré sur le serveur. Une entrée type présente des données structurées plutôt qu'une chronologie d'activités lisible par un humain. Recherchez l'heure de l'événement, l'acteur, l'application, l'action et les détails pertinents. Les opérations sur les fichiers peuvent également inclure un chemin d'accès, le propriétaire ou l'identifiant du fichier ; les autres types d'événements possèdent leurs propres champs.
Vérifiez qu'une action nouvellement générée apparaît après la modification de la configuration, que son horodatage est cohérent avec le fuseau horaire du serveur et que l'action et l'utilisateur correspondent au test. Évitez d'utiliser un fichier de production sensible pour tester la journalisation des suppressions. Si rien ne s'affiche, vérifiez que l'application d'audit est activée, que le répertoire de destination des journaux est correct et accessible en écriture, que la variable d'environnement ou la configuration PHP a bien été chargée, que le niveau de journalisation du serveur est adéquat avec la journalisation par défaut et que le type d'action figure parmi ceux enregistrés par votre version de l'application d'audit.
Exemple de structure d'un enregistrement d'audit. ownCloud documente des champs communs tels que l'heure, l'utilisateur, l'application, l'adresse distante et un identifiant d'action ; les champs spécifiques à l'événement varient.
Étape 4 : Protéger, conserver et examiner le fichier d’audit
La journalisation d'audit n'est utile que si les enregistrements restent accessibles et que l'accès est contrôlé. Limitez les permissions des fichiers et répertoires aux comptes du système d'exploitation et aux rôles d'audit qui en ont besoin. Prévoyez une rotation ou une collecte des journaux afin d'éviter la saturation du stockage par une instance très sollicitée. Déterminez la durée de conservation des enregistrements en fonction de votre politique interne et de vos obligations légales ; ownCloud n'impose pas de durée de conservation universelle.
Pour une meilleure séparation des tâches, conservez le fichier d'audit en dehors de l'espace de fichiers accessible via le Web, dans la mesure du possible, et définissez clairement quels administrateurs système et auditeurs peuvent le consulter ou le gérer. ownCloud documente le rôle d'auditeur et décrit la séparation des journaux d'audit des journaux ownCloud généraux, y compris les configurations où l'administrateur système n'a pas accès au fichier d'audit. Ce résultat dépend de la configuration des permissions et du déploiement sur l'hôte ; il est donc conseillé de vérifier ce point avec votre équipe de sécurité plutôt que de supposer qu'un nom de fichier distinct suffit à lui seul à assurer la séparation.
Si vous utilisez Splunk, la documentation d'audit d'ownCloud décrit la surveillance admin_audit.logavec Splunk Universal Forwarder et l'analyse des données de sortie au format JSON. Elle inclut des exemples inputs.confet props.confdes paramètres. Considérez le système de transmission et le système de réception comme faisant partie du périmètre d'audit : protégez les identifiants, chiffrez le transport lorsque votre architecture de journalisation le permet, confirmez la réception des événements et configurez des alertes en cas de lacunes ou d'échecs d'ingestion.
Aperçu de la collecte des journaux : la documentation d’ownCloud décrit le transfert du journal d’audit dédié vers Splunk pour la recherche et l’analyse.
Facultatif : limiter les noms de groupes qui apparaissent dans les entrées
Par défaut, le contexte d'audit peut inclure les utilisateurs liés à un événement et les groupes auxquels ils appartiennent. Ce OWNCLOUD_ADMIN_AUDIT_GROUPSparamètre permet de limiter les noms de groupes inclus. Utilisez-le uniquement lorsqu'une politique de filtrage ciblée est justifiée ; réduire le contexte de groupe peut également rendre les investigations ultérieures moins pertinentes. Examinez les enregistrements obtenus et vos exigences en matière de confidentialité avant d'appliquer un filtre.
Problèmes de configuration courants
Aucun enregistrement d'audit n'apparaît : vérifiez que l'application d'audit d'entreprise est activée. Si vous utilisez le journal standard, assurez-vous que le niveau global est défini sur INFO (1) ou DEBUG (0). Si vous utilisez un fichier séparé, vérifiez l'état de l'application et le chemin d'accès en écriture.
Le fichier attendu est introuvable : le chemin Docker indiqué suppose un volume monté. Vérifiez la configuration effective du conteneur, le mappage des volumes et les permissions de l’utilisateur du service.
Les enregistrements apparaissent au mauvais endroit : vérifiez la configuration active OWNCLOUD_LOG_CONDITIONSet log.conditionsévitez les règles dupliquées ou conflictuelles.
Le flux semble incomplet : Activité et Audit sont des applications distinctes, et la couverture de l’application d’audit dépend du type d’événement et de la version. Vérifiez qu’un événement connu est pris en charge par la version installée avant de conclure à un dysfonctionnement de la journalisation.
Les événements en ligne de commande sont absents : ownCloud inclut par défaut les événements déclenchés par l’interface de ligne de commande. Vérifiez si la admin_audit ignore_cli_eventsvaleur a été définie yes.
Liste de vérification finale
Le déploiement est ownCloud Server Enterprise et l'application d'audit compatible est activée.
La destination configurée existe, est accessible en écriture par ownCloud et n'est pas exposée en tant que contenu utilisateur ordinaire.
Une action de test autorisée crée un enregistrement correspondant avec un horodatage et un acteur plausibles.
Les responsabilités en matière d'autorisations, de rotation, de conservation et d'accès sont documentées.
Si les journaux sont transférés en externe, le système récepteur affiche les événements récents et la surveillance peut détecter les interruptions.