10. Utilisation des données d’audit dans les plugins pour la conformité des paquets WAPT et pour les services externes ¶
10.1. Afficher les données d’audit de la machine dans la Console WAPT ¶
Vous pouvez gérer la sortie d’audit et afficher le résultat de l’audit si vous activez l’option dans l’onglet Affichage‣ Préférences d’affichage. Cochez l’option Afficherl’onglet des données d’audit de la machine pour voir l’onglet Données d’audit sur chaque client.
10.1.1. Afficher les données chiffrées avec un certificat dans l’onglet des données d’audit¶
Avec la fonction d’audit, il est possible de chiffrer les données sensibles provenant de machines distantes ; il sera possible de lire les données sensibles chiffrées avec un certificat installé sur la machine de l’administrateur WAPT. De cette façon, le Serveur WAPT peut déposer des données sensibles d’inventaire sans que le serveur devienne un bien sensible.
Cette méthode est particulièrement utile par exemple pour gérer en toute sécurité les mots de passe aléatoires LAPS dans WAPT.
Dans setup.py, vous pouvez utiliser une fonction pour chiffrer des données avec un certificat. Si vous disposez de la clé privée correspondant au certificat utilisé pour chiffrer les données, celles-ci seront déchiffrées et apparaîtront sous une forme lisible.
Ce code va chiffrer le mot de passe 1234 avec tous les certificats présents sur la machine qui est utilisée pour gérer WAPT. Depuis la Console WAPT, vous verrez dans l’onglet Données d’audit la version chiffrée et vous pourrez déchiffrer les données avec la clé privée associée au certificat public qui a été utilisé pour chiffrer les données.
10.2. Synchroniser les inventaires de WAPT vers GLPI ¶
WAPT Enterprise propose une synchronisation entre les inventaires de vos postes et le logiciel GLPI , un ITSM.
Cette méthode synchronise automatiquement les changements sur votre parc informatique avec le serveur GLPI.
WAPT peut se synchroniser avec GLPI 10 en utilisant l’API JSON native. WAPT peut se synchroniser avec GLPI version 9.x en utilisant le plugin FusionInventory au format XML.
Download the tis-glpi-agent package from the WAPT store and add it as a dependency to your host packages. This ensures the agent is automatically installed and upgraded on all targeted machines.
Attention
GLPI par WAPT ne fonctionne pas avec l’authentification Kerberos pour GLPI.
Si vous utilisez Kerberos pour GLPI, excluez glpi/plugins/fusioninventory/ de l’authentification Nginx.
Indication
Si vous rencontrez des problèmes avec le serveur GLPI qui ne reçoit pas certaines parties des inventaires, vous pouvez installer le paquet tis-audit-glpi-inventory sur les clients. De cette façon, vous obtiendrez l’inventaire officiel de GLPI.
10.2.2. Configuration de l’Agent WAPT et du paquet de synchronisation¶
Pour configurer correctement la synchronisation entre WAPTAgent et GLPI, procédez comme suit :
Lisez le contenu du fichier usageandnotes et suivez les instructions fournies pour terminer la configuration.
Avertissement
Installation des dépendances requises pour GLPI 9.x
Afin de recevoir des inventaires sur le serveur GLPI, le plugin FusionInventory devra être installé sur le serveur GLPI. Ceci n’est pas nécessaire pour GLPI 10 qui a sa propre API JSON native.
Modèles des cartes contrôleurs (excepté la carte graphique)
Version de l’antivirus
État du pare-feu
Liste groupe local
Liste et état de la banque de mémoire
Liste des ports USB et des périphériques connectés
Statut de l’imprimante
Lecteurs de carte
Liste d’Appx à l’échelle du système
Notes de bas de page
10.2.4. Erreurs possibles dans l’inventaire rapporté sur le serveur GLPI¶
Les inventaires téléchargés par le Serveur WAPT vers le serveur GLPI peuvent être incomplets ou comporter des erreurs par rapport aux inventaires téléchargés directement par l’agent FusionInventory déployé sur les hôtes. L’une des raisons est que WAPT vise à ne rapporter que les valeurs les plus importantes.
Si vous pensez que des éléments importants manquent ou sont signalés de manière erronée, veuillez signaler le problème à l’équipe de développement de Tranquil IT.
Pour le rapport, l’équipe de développement a besoin de 2 fichiers .xml.
Tout d’abord, installez l’agent FusionInventory sur l’ordinateur sur lequel vous observez un élément d’inventaire manquant ou déclaré à tort.
Exécutez l’agent FusionInventory et extrayez le rapport dans un fichier .xml.
WAPT Enterprise offre une synchronisation entre les inventaires de vos hôtes et le logiciel Cyberwatch <https://cyberwatch.fr/>, un ISVM.
La méthode synchronise automatiquement les informations sur les mises à jour ou les logiciels installés avec l’outil Cyberwatch afin d’analyser les vulnérabilités détectées et de vous en avertir.
Connectez-vous à votre serveur Cyberwatch et accédez à votre profil.
Dans la section API, cliquez sur Voir mes clés API.
Cliquez sur Add et nommez votre clé d’accès à l’API pour WAPT.
Définissez le niveau d’accès sur Full et indiquez une date d’expiration. Si vous n’en donnez pas, la clé n’expirera jamais.
Cette clé avec son ID de clé d’accès à l’API vous permettra d’utiliser l’API Cyberwatch pour notre paquet WAPT.
10.3.3. Configuration de l’Agent WAPT et du paquet de synchronisation¶
Installez et configurez l’Agent WAPT sur l’ordinateur qui exécutera la synchronisation. L’Agent WAPT est installé par défaut sur le Serveur WAPT, il suffit de le configurer.
Pour configurer l’Agent WAPT, veuillez vous référer à la documentation correspondante.
Vous pouvez avoir deux paquets :
si vous avez l’agent Cyberwatch, vous pouvez importer de Cyberwatch en installant le paquet tis-cyberwatch-plugin-import-from-cyberwatch, cela vous donnera des informations directement sur votre Console WAPT.
pour les appareils sans agent, vous pouvez toujours exporter vers votre serveur Cyberwatch les informations de vos hôtes WAPT en installant le paquet tis-cyberwatch-plugin-export-to-cyberwatch-airgap, il vous donnera des informations sur votre console Cyberwatch sans que l’agent Cyberwatch ne soit installé.
Vous devez configurer une planification d’audit sur l’agent
[global]...waptaudit_task_period=120m...
Avec le paquet, quel que soit votre choix (vous pouvez évidemment choisir les deux), il créera deux fichiers ini dans votre $WAPT_INSTALL_DIR/private (linux : /opt/wapt/private, windows : C:ProgramFiles(x86)waptprivate`). Connectez-vous à l’hôte et modifiez les fichiers cyberwatch_api.ini et wapt_api.ini.
WAPT peut collecter des données d’audit matérielles et logicielles détaillées à partir des machines clientes en utilisant le plugin audit_data.
Les données collectées comprennent des informations sur le système, telles que :
Les données collectées comprennent des informations sur le système, telles que les logiciels installés, les services en cours d’exécution, l’utilisation du disque, les comptes d’utilisateurs, la configuration du réseau, etc.
Ces données sont stockées dans un format JSON structuré et affichées dans la console WAPT à l’aide de modèles HTML.
Par défaut, WAPT fournit des modèles génériques pour visualiser ces données. Cependant, ces modèles peuvent être entièrement personnalisés pour répondre à vos besoins.
10.4.1.1. Pourquoi personnaliser les rapports d’audit ?¶
La personnalisation des rapports d’audit vous permet de vous concentrer sur les données spécifiques à votre organisation. Créez des tableaux de bord ou des tableaux adaptés aux politiques internes, améliorez la lisibilité et la facilité d’utilisation pour les équipes de support technique, générez une meilleure documentation pour les audits ou la conformité.
WAPT utilise des modèles Mustache pour rendre les données JSON dans un contenu HTML structuré à l’intérieur de la console.
Mustache est logic-less template language**( un langage de template **sans logique). Il permet d’injecter des données dynamiques dans des mises en page HTML statiques, sans script complexe.
Un modèle de Mustache est un fichier texte contenant :
HTML statique
Les balises dynamiques comme {{key}}, {{#section}}...{{/section}}, {{{^section}} … {{/section}}`
Il est léger, facile à apprendre et idéal pour personnaliser les rapports visuels sans écrire de code.
Les valeurs des espaces réservés sont fournies dans un objet JSON (cet objet est appelé contexte de rendu - il contient les données transmises au modèle) :
<divclass="system-info">
Hostname: PC123<br>
Operating System: Windows 10
</div>
Cet exemple basique montre comment Mustache remplace chaque {{placeholder}} par la valeur correspondante du contexte JSON. Il n’y a pas de logique, seulement une substitution.
Utilisez {{key}} pour insérer une seule valeur du contexte de rendu dans le modèle.
La valeur de la clé hostname sera recherchée dans le contexte actuel (et si elle n’est pas trouvée, dans n’importe quel contexte parent). Lorsqu’une valeur est trouvée, la balise entière est remplacée par la valeur, avec un code HTML pour éviter les injections.
Cette syntaxe vous permet d’afficher un bloc de contenu uniquement si la valeur de la clé existe et est considérée comme « vraie » (ni nulle, ni fausse, ni vide). Elle est couramment utilisée pour effectuer un rendu conditionnel d’une section ou pour itérer sur une liste.
Exemple avec un objet
Le contexte JSON :
{"user":{"name":"Alice"}}
Modèle :
{{#user}}
<p>User: {{name}}</p>
{{/user}}
Résultat
<p>User: Alice</p>
Si la clé user est manquante ou null, rien ne sera rendu.
Exemple avec une liste
Si la valeur de la section est une liste (tableau), le bloc est rendu une fois pour chaque élément, avec le contexte fixé à l’élément courant.
La section inverse {{^section}} est utilisée pour afficher un bloc uniquement si la valeur est fausse - ce qui signifie qu’elle n’existe pas, qu’elle est false, null, ou une liste vide. Ceci est utile pour afficher des messages de repli ou des indicateurs « pas de données ».
Le contexte JSON :
{"has_battery":false}
Modèle :
{{^has_battery}}
<p>This device has no battery.</p>
{{/has_battery}}
Résultat
<p>This device has no battery.</p>
Si « has_battery » : true, le bloc ne sera pas rendu du tout.
Mustache permet les commentaires en ligne en utilisant {{ ! … }}. Ces commentaires sont complètement ignorés lors du rendu et n’apparaissent pas dans le code HTML de sortie.
Ceci est utile pour laisser des notes aux auteurs de modèles sans affecter la sortie.
Modèle :
{{! This is a comment for developers }}
<p>Hello</p>
La balise {{.}} est utilisée pour itérer sur une liste de valeurs simples (chaînes de caractères, nombres, booléens). Elle fait référence à la valeur courante dans le contexte.
Si vous itérez sur un tableau comme [« important », « urgent »], chaque {{.}} correspond à la chaîne courante dans la boucle.
WAPT fournit de nombreuses helpers (aides) personnalisées qui peuvent être utilisées dans les modèles Mustache pour transformer, formater ou extraire des données.
Ces helpers (aides) étendent la syntaxe de base de Mustache et sont particulièrement utiles lorsque l’on travaille avec des données d’audit.
Les helpers disponibles sont énumérées ci-dessous :
Comparaison et logique
IIf - Rendu conditionnel en ligne (if cond then val1 else val2)
10.4.3.2.4. Commentaire -
{{ ! commentaire }}¶Mustache permet les commentaires en ligne en utilisant {{ ! … }}. Ces commentaires sont complètement ignorés lors du rendu et n’apparaissent pas dans le code HTML de sortie.
Ceci est utile pour laisser des notes aux auteurs de modèles sans affecter la sortie.
Modèle :
{{! This is a comment for developers }} <p>Hello</p>Résultat