Référence : syntaxe des questions avancées

Utiliser des expressions régulières

L’analyseur de questions prend en charge la mise en correspondance des expression régulières (Booster la syntaxe).

L’exemple suivant fait correspondre les noms d’ordinateurs commençant par la lettre c dans le domaine test.local.

F : Figure 1 :  Mise en correspondance d’une expression régulière

Le sensor Detect Primary Alerts (Détecter les alertes primaires) utilise une expression régulière pour collecter les résultats correspondant à tout chiffre compris entre 0 et 9. Étant donné que les alertes Detect (Détecter) ont des ID numériques, cette expression exclut les résultats vides.

F : Figure 2 :  Expression régulière pour exclure les résultats vides

Vous pouvez également utiliser une combinaison de négations et d’expressions régulières pour créer des expressions de filtre. Par exemple, le groupe d’ordinateurs intégré No Computers (Aucun ordinateur) utilise une question avec l’expression not matches (pas de correspondance) et une expression régulière (.*) pour la mise en correspondance des résultats vides. L’auteur sait que le nom de l’ordinateur retourne toujours une chaîne, il s’agit donc d’une façon astucieuse de désactiver une action planifiée. Le groupe d’actions par défaut inclut uniquement No computers (Aucun ordinateur). Pour empêcher TaaSle serveur Tanium de déployer certaines actions sur n’importe quel endpoint, modifiez ces actions pour cibler le groupe d’actions Default (Par défaut).

F : Figure 3 :  Expression régulière pour n’effectuer aucune mise en correspondance

Utiliser des filtres de groupe d’ordinateurs

Vous pouvez émettre des questions spécifiant un groupe d’ordinateurs dans la clause from. Le groupe d’ordinateurs peut être un groupe de gestion ou un groupe de filtres (pour plus de détails sur ces types, voir Gestion des groupes d’ordinateurs.)

Pour les groupes d’ordinateurs avec appartenance définie par filtre, l’analyseur de questions convertit le nom du groupe d’ordinateurs spécifié en question déterminant l’appartenance. Dans l’exemple suivant, le groupe d’ordinateurs nommé Windows est analysé selon sa définition : is Windows contain true.

F : Figure 4 :  D’une clause avec un groupe d’ordinateurs disposant d’une appartenance définie par un filtre

Utiliser des filtres de colonne de sensor

Les sensors multicolonnes sont conçus pour recueillir plusieurs éléments d’informations connexes dans une seule réponse.

F : Figure 5 :  Résultats provenant d’un sensor multi-colonnes

Utiliser une expression régulière starts with (commence par), ends with (se termine par) ou contains (contient) pour filtrer les résultats pour un sensor multicolonne, par exemple les applications installées, peut être difficile, étant donné que la chaîne de résultats pour un sensor multicolonne est en réalité une chaîne unique avec des délimiteurs de colonne. Si vous n’êtes pas prudent, vous pouvez faire correspondre une chaîne dans une colonne imprévue ou faire correspondre involontairement une chaîne dans une colonne cachée dont vous n’aviez pas même connaissance. Vous pouvez spécifier à quelle colonne faire correspondre les résultats de sensor multicolonne. La syntaxe est get sensor having sensor:column contains value. Le nom de la colonne est sensible à la casse. Notez que le filtrage à une seule colonne fonctionne uniquement si la définition du sensor spécifie les délimiteurs de colonne avec un caractère unique (par exemple : « | » et non pas des caractères multiples (comme |:). Pour faire correspondre les résultats de toutes les colonnes, la syntaxe est get sensor contains value.

L’exemple suivant utilise un filtre de colonne de sensor dans la clause get (Récupérer).

F : Figure 6 :  Filtre de colonne de capteur dans la clause get

L’exemple suivant utilise un filtre de colonne de sensor dans la clause from (de) et dans la clause Get (Récupérer).

F : Figure 7 :  Filtre de colonne de capteur dans la clause from et dans la clause get

Utiliser des filtres $substring()

Vous pouvez utiliser des filtres $substring() pour faire correspondre les modèles de chaîne des résultats. La fonction $substring() prend les arguments suivants : nom de sensor, position de départ (où 0 est la première position), nombre de caractères.

L’exemple suivant fait correspondre les résultats du sensor Installed Applications (Applications installées) lorsque les deux premiers caractères correspondent à la chaîne Go.

F : Figure 8 :  Filtre $substring()

Le filtre $substring() n’est pas pris en charge avec les sensors multicolonnes.

Utiliser l’opérateur in

Vous pouvez utiliser l’opérateur in pour spécifier une collection de résultats des sensors correspondants. L’opérateur in prend une liste séparée par des virgules d’arguments qui sont analysés dans un booléen OR (OU).

L’exemple suivant utilise l’opérateur in pour faire correspondre un filtre de sensor dans la clause From (De) avec les résultats contenant Virtual (Virtuel) ou Physical (Physique).

F : Figure 9 :  Opérateur in dans la clause from

L’exemple suivant utilise l’opérateur in pour faire correspondre un filtre de colonne de sensor dans la clause From (De).

F : Figure 10 :  Opérateur in avec un filtre de colonne de capteur

Utiliser des filtres imbriqués

Dans la clause from d’une question, vous pouvez configurer plusieurs filtres, y compris des filtres imbriqués.

L’exemple suivant montre des filtres imbriqués dans le Question Builder. L’exemple combine une expression correspondante avec l’une des expressions imbriquées.

F : Figure 11 :  Filtres imbriqués dans Question Builder

Vous pouvez également spécifier des filtres imbriqués dans le champ Explore Data (Explorer les données).

F : Figure 12 :  Filtres imbriqués dans le champ Explore Data (Explorer les données)

L’exemple suivant montre une logique booléenne différente : « match both of these OR this one » (Faire correspondre les deux OU celui-ci).

F : Figure 13 :  Filtres imbriqués dans le champ Explore Data (Explorer les données)

Spécifier des paramètres de sensor avancés

Les réponses du Tanium Client doivent être conformes à tous les paramètres de sensor avancés que vous spécifiez dans un message de question. Vous pouvez configurer les paramètres de sensor avancés dans Question Builder (voir la figure suivante) ou dans le champ Explore Data (Explorer les données).

F : Figure 14 :  Question Builder : paramètres de capteur avancés

Le tableau suivant décrit les paramètres de sensor avancés.

T :  Tableau 15 : Paramètres de sensor avancé
Paramètres Recommandations
Sensibilité à la casse Chaînes de groupe :
  • Ignore case (Ignorer la casse) : valeurs de résultats de groupe et de comptage, indépendamment des différences dans les caractères majuscules et minuscules.
  • Match case (Tenir compte de la casse) : Valeurs de résultats de groupe et de comptage, avec une attention stricte portée à la casse.
Correspondance Cette option est uniquement disponible dans la  section from computers with (depuis les ordinateurs avec).

Pour certains capteurs, un client Tanium peut calculer plusieurs résultats. Lorsque le capteur est utilisé comme filtre dans la clause from, spécifiez si l’un ou l’ensemble des résultats doit correspondre au filtre :

  • Match Any Value (Faire correspondre n’importe quelle valeur) : toute valeur de la réponse doit correspondre à la valeur spécifiée dans la question.
  • Match All Values (Faire correspondre toutes les valeurs) : toutes les valeurs de la réponse doivent correspondre à la valeur spécifiée dans la question.

Par exemple, en réponse au capteur IP Address (Adresse IP), il est possible qu’un client Tanium retourne à la fois une adresse IPv6 et une adresse IPv6. Une question basée sur le capteur IP Address contenant 192.168, par exemple, peut correspondre à l’adresse IPv4 mais pas à l’adresse IPv6. Dans ce cas, vous voulez probablement faire correspondre l’option Match Any Value (Faire correspondre n’importe quelle valeur).

Traiter les données en tant que Interact traité les valeurs de sensor comme le type de données que vous spécifiez :
TypeExemples
Date/Heure (BES)Vendredi, 29 janvier 2021 13:14:39 -0500
Date/Heure (WMI)20210129131439.999999-500
Taille de fichier8 192 Ko
1-100 Mo
125 Mo
34 Go
Entier-100

64428
100000000
Adresse IP10.70.144.52
fe80::8c22:fed6:7720:3c96
Numérique-100.77
0,25

3.1415926534
10.20.30.40
512:17472:192.168.2.187_512:0:98.30.236.25
1.0e-10
Texte(peut être toute chaîne valide)
Durée42 minutes
8 heures
Moins de 1 jour
2 semaines
36 jours
2 ans, 3 mois, 18 jours, 4 heures, 22 minutes et 3,67 secondes
Version7.4.4.1250
Âge maximum des données Durée maximale pendant laquelle le client Tanium peut utiliser un résultat mis en cache pour répondre à une question. Par exemple, l’âge maximum des données pour le capteur File Size (Taille de fichier) est de 15 minutes par défaut. Lorsqu’une question posée à un client Tanium exécute le capteur File Size (Taille de fichier), le client met en cache le résultat. Au cours des 15 prochaines minutes, si une question posée au client Tanium inclut le capteur File Size, le client répond avec la réponse mise en cache. Après 15 minutes, si une question posée au client Tanium inclut le capteur File Size, le client exécute de nouveau le script du capteur pour calculer une nouvelle réponse.

Utilisez des âges plus courts pour les capteurs qui restituent des valeurs changeant fréquemment, comme les capteurs de statut et d’utilisation. Utilisez des âges plus longs pour des valeurs qui changent généralement rarement, comme le type de châssis ou l’appartenance au domaine Active Directory.

L’exemple suivant spécifie « Treat Data » (Traiter les données) comme <type> option. La syntaxe est sensor?type=value.

F : Figure 16 :  Paramètres de capteur avancés - « Treat Data » comme type

Utilisez uniquement « Treat Data » comme option de type avec des opérateurs de comparaison, tels que « Free Memory greater than 300 » (Mémoire disponible supérieure à 300), comme illustré dans l’exemple.

L’exemple suivant spécifie l’option « Max Age » (Âge max). La syntaxe est sensor?maxAge=value. Lorsque vous spécifiez maxAge dans le champ Explore Data (Explorer les données), spécifiez un nombre de secondes.

F : Figure 17 :  Paramètres de capteur avancé - « maxAge »

L’exemple suivant spécifie l’option « Ignore Case » (Ignorer la casse). La syntaxe est sensor?ignoRecase=value. 0 correspond à la casse et 1 signifie ignorer la casse.

F : Figure 18 :  Paramètres de capteur avancés - « ignoreCase »

L’exemple suivant spécifie l’option « Max Age ». Une machine peut avoir plusieurs interfaces et plusieurs adresses IP pour ces interfaces. Dans cet exemple, l’option « Matches all » (Faire tout correspondre) est utilisée pour filtrer les résultats uniquement pour les ordinateurs avec toutes les adresses IP correspondant à la chaîne spécifiée. Vous ne pouvez spécifier cette option que dans la clause from. La syntaxe est with all sensor contains value.

F : Figure 19 :  Paramètres de capteur avancés - faire tout correspondre

Les exemples suivants montrent comment spécifier plusieurs options de sensor avancées.

F : Figure 20 :  Paramètres de capteur avancés - paramètres multiples

Spécifier des paramètres de question avancés

Activez Force Computer ID (Forcer l’ID d’ordinateur) pour convertir une question de comptage à sensor unique en une question de non-comptage en forçant les Tanium Clients à inclure l’ID d’ordinateur dans leurs réponses. Notez que la page Question Results (Résultats de la question) n’inclut pas les résultats d’ID d’ordinateur lorsque vous sélectionnez cette option. La conversion en une question sans comptage est une solution de contournement qui résout les cas où une question de comptage renvoie la réponse too many results (trop de résultats). Pour plus de détails, voir l’article de la base de connaissances Erreurs de dépannage/Messages d’information (message Trop de résultats). Vous pouvez activer le paramètre dans le champ Explore Data (Explorer les données) en utilisant l’énoncé Get?forceComputerIdFlag=1. Vous pouvez également activer le paramètre dans Question Builder, sous Advanced Question Options (Options de question avancées).