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

Utiliser des mots ou des caractères réservés

Mots ou caractères réservés dans le texte de la question

L’analyseur Tanium™ emploie certains mots et caractères pour interpréter le texte de la question que vous saisissez en tant que syntaxe de requête valide. Par exemple, l’analyseur utilise les caractères entre crochets [ et ] pour inclure les valeurs des sensors paramétrés et utilise des variations du mot correspondance pour prendre en charge les expressions régulières. Vous devez inclure ces mots et caractères réservés entre guillemets lorsque vous les utilisez comme littéral de chaîne dans les questions. Par exemple, pour voir tous les endpoints dont les noms de l’ordinateur contiennent la combinaison de lettres en, émettez la question Obtenir le nom de l’ordinateur de tous les ordinateurs dont le nom de l’ordinateur contient « en ».

FerméAfficher les caractères qui nécessitent des guillemets dans les questions

  • "

    Utilisez des guillemets doubles comme séquence de caractères d’échappement pour chaque instance de guillemets dans une chaîne de texte. Par exemple, pour voir quels endpoints ont un nom de l’ordinateur qui contient la chaîne « test », posez la question :

    Obtenir le nom de l’ordinateur de tous les ordinateurs dont le nom de l’ordinateur contient """test"""

  • .

  • ,

  • :

  • ?

  • $

  • Espaces blancs

    Par exemple, pour voir quels endpoints ont un nom de l’ordinateur avec un espace vide avant et après la chaîne DBserver, posez la question suivante :

    Obtenir le nom de l’ordinateur de tous les ordinateurs dont le nom de l’ordinateur contient " DBserver "

FerméAfficher les mots qui nécessitent des guillemets dans les questions

  • tout

  • et

  • n’importe lequel

  • contenir

  • contenant

  • contains

  • correspond

  • ne correspond pas à

  • fin

  • se termine

  • égal à

  • obtenir

  • ayant

  • dans

  • correspond à

  • correspondance

  • pas

  • ou

  • avec

  • démarrage

  • démarre

Mots réservés dans les noms de sensors

Les sensors avec des noms qui utilisent des mots réservés nécessitent des guillemets lorsque vous les utilisez comme littéraux de chaîne dans le champ Ask a Question (Poser une question) d’Interact. Sinon, la liste déroulante qui affiche les questions suggérées ne peut pas correspondre exactement à votre saisie. Par exemple, si vous saisissez le sensor Running Processes with MD5 Hash (Processus en cours d’exécution avec hachage MD5) sans guillemets, la liste déroulante affiche des suggestions qui confondent votre saisie avec d’autres sensors contenant les mots Hachage Md5 :

Figure 1 : Nom de sensor sans guillemets

Si vous utilisez des guillemets autour du nom de sensor, la liste déroulante affiche la bonne question :

Figure 2 : Nom de sensor avec guillemets

FerméAfficher les mots réservés dans les noms de sensors

  • $serverNames

  • $serverIDs

  • $substring

  • $unescape

  • tout

  • Toutes

  • TOUS

  • et

  • n’importe lequel

  • ordinateurs

  • Ordinateurs

  • ORDINATEURS

  • contains

  • contenant

  • égal à

  • de

  • De

  • DE

  • obtenir

  • Obtenir

  • OBTENIR

  • ayant

  • Comportant

  • COMPORTANT

  • dans

  • machines

  • Machines

  • MACHINES

  • correspond à

  • correspondance

  • pas

  • numéro

  • Numéro

  • NUMÉRO

  • sur

  • sur

  • SUR

  • ou

  • avec

  • Avec

  • AVEC

Utiliser des filtres d’expression régulière

L’analyseur de questions prend en charge la mise en correspondance des expression régulières sur la base de Booster la syntaxe. L’exemple suivant met en correspondance les noms d’ordinateurs commençant par la lettre q dans le domaine tanium.com.

Figure 3 : 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 ont des identifiants numériques, cette expression exclut les résultats vides.

Figure 4 : 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 prédéfini 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. Étant donné que le sensor Computer Name (Nom de l’ordinateur) renvoie toujours une chaîne, cette combinaison permet d’empêcher le déploiement d’actions. Pour empêcher Cloud Taniumle Tanium Server de déployer certaines actions sur n’importe quel endpoint, configurez ces actions pour cibler le groupe d’actions Default (Par défaut) qui inclut uniquement le groupe d’ordinateurs No Computers (Aucun ordinateur).

Figure 5 : 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. Utilisez des guillemets autour du nom du groupe d’ordinateurs. Le groupe d’ordinateurs peut être un groupe de gestion ou un groupe de filtres. Pour obtenir plus de détails, reportez-vous à la section 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.

Figure 6 : Clause from avec le groupe d’ordinateurs

Utiliser des filtres de colonne de sensor

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

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

Il peut être difficile d’utiliser l’expression régulière starts with (commence par), ends with (se termine par) ou contains (contient) pour filtrer les résultats pour un sensor multi-colonnes, par exemple Installed Applications (Applications installées) étant donné que la chaîne de résultats pour un sensor multi-colonnes est en réalité une chaîne unique avec des délimiteurs de colonne. Si vous ne faites pas attention, vous pouvez mettre en correspondance une chaîne dans une colonne imprévue ou mettre involontairement en correspondance une chaîne dans une colonne masquée. Pour un sensor multi-colonnes, vous pouvez spécifier une colonne spécifique pour la mise en correspondance des résultats. La syntaxe est get (obtenir) <sensor> having (comportant) <sensor> :<column> contains (contient) <value>. Le nom de la colonne est sensible à la casse. Notez que le filtrage à une seule colonne fonctionne uniquement si la configuration du sensor spécifie des délimiteurs de colonne (champ Diviser en plusieurs colonnes) avec un caractère unique (comme |), et non pas des caractères multiples (comme |:). Pour mettre en correspondance les résultats de toutes les colonnes, la syntaxe est get (obtenir) <sensor> contains (contient) <value>.

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

Figure 8 : Filtre de colonne de sensor 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).

Figure 9 : Filtre de colonne de sensor 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 met en correspondance les résultats du sensor Installed Applications (Applications installées) où les deux premiers caractères correspondent à la chaîne Go (Accéder).

Figure 10 : Filtre $substring()

Vous ne pouvez pas utiliser le filtre $substring() avec des sensors multi-colonnes.

Utiliser l’opérateur « en » pour filtrer

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).

Figure 11 : 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). La syntaxe de la question est comme suit :

Get Computer Name and Installed Applications having Installed Applications:Name contains Adobe Reader from all machines with Installed Applications:Name contains Adobe Reader and Installed Applications:Version in(9,5.0,11.0.06)

Figure 12 : Opérateur in avec un filtre de colonne de sensor

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.

Figure 13 : Filtres imbriqués dans Question Builder

Vous pouvez également spécifier des filtres imbriqués dans le champ Ask a Question (Poser une question).

Figure 14 : Filtres imbriqués dans le champ Ask a Question (Poser une question)

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

Figure 15 : Filtres imbriqués dans le champ Ask a Question (Poser une question)

Endpoints aléatoires cibles

Utilisez le sensor Online Random Sample (Échantillon aléatoire en ligne) pour identifier un sous-ensemble aléatoire d’endpoints en ligne à partir de tous les endpoints ciblés. Vous pouvez cibler des endpoints aléatoires lorsque vous testez un nouveau package ou une nouvelle configuration sur un sous-ensemble aléatoire de d’endpoints, ou vérifier un ensemble aléatoire d’endpoints pour vous assurer qu’ils ont les configurations appropriées avant un audit. Le sensor Online Random Sample (Échantillon aléatoire en ligne) est inclus dans la solution de contenu uniquement Default Content.

Le sensor Online Random Sample (Échantillon aléatoire en ligne) récupère les résultats Vrai et Faux de tous les endpoints ciblés. Le sensor accepte un paramètre Sample % (% d’échantillon) de 0 à 100 pour déterminer le pourcentage approximatif des endpoints qui répondent par Vrai. Par exemple, si vous transmettez 25 comme paramètre et cible de toutes les machines, environ 25 % des endpoints dans l’environnement renverront une réponse Vrai. Étant donné que chaque endpoint évalue le sensor et génère une réponse Vrai ou Faux aléatoire en fonction du pourcentage que vous spécifiez, le nombre d’endpoints qui renvoient Vrai peut varier. La valeur par défaut pour Sample % (% d’échantillon) est 5.

Figure 16 : Sensor d’échantillon aléatoire en ligne

Utiliser les options de sensor avancées

Les résultats de la question des Tanium Clients doivent être conformes à toutes les options avancées que vous spécifiez pour les sensors dans la question. Vous pouvez configurer des options de sensor avancées dans le Question Builder (reportez-vous à la Figure 17) ou dans le champ Ask a Question (Poser une question) (reportez-vous aux exemples après le Tableau 1).

Figure 17 : Question Builder : options de sensor avancées

Le tableau suivant décrit les options de sensor avancées :

Tableau 1 : Options de sensor avancées
Option Recommandations
Sensibilité à la casse Indiquez si Interact prend en compte les caractères en majuscules et en minuscules lors du regroupement et du comptage des résultats de la question :
  • Ignorer la casse
  • Tenir compte de la casse

Reportez-vous à la section Exemple : Sensibilité à la casse.

Correspondance Cette option n’est disponible que dans la section from computers with (depuis les ordinateurs avec) du Question Builder, qui correspond à la clause from (de) d’une question dans le champ Ask a Question (Poser une question).

Un Tanium Client peut calculer plusieurs résultats pour certains sensors. Par exemple, un client qui a plusieurs interfaces renvoie plusieurs résultats pour le sensor IP Address (Adresse IP). Vous pouvez utiliser l’option Matching (Mise en correspondance) comme filtre de sorte qu’un client réponde à la question uniquement si ses résultats sont conformes à votre sélection :

  • Match Any Value (Faire correspondre n’importe quelle valeur) : Le client renvoie les résultats si l’un de ses résultats correspond à la valeur spécifiée dans la question.
  • Match All Values (Faire correspondre toutes les valeurs) : Le client ne renvoie les résultats que si l’ensemble de ses résultats correspondent à la valeur spécifiée dans la question.

Reportez-vous à la section Exemple : Correspondance.

Traiter les données en tant que Interact traite les valeurs de sensor comme le type de données que vous spécifiez. Pour obtenir une description des types de données, reportez-vous à la section au Guide d’utilisation de Tanium Console : Type de résultat. Pour consulter un exemple, reportez-vous à la section Exemple : Traiter les données comme type.
Âge maximum des données

Spécifiez le temps maximum pendant lequel le Tanium Client peut utiliser un résultat mis en cache pour le sensor, au lieu de le réexécuter pour obtenir un résultat actualisé, lors de la réponse aux questions. Par exemple, vous pouvez spécifier 15 minutes pour le sensor File Size (Taille de fichier). Lorsqu’un client reçoit une question qui exécute le sensor File Size (Taille de fichier), le résultat est mis en cache. Au cours des 15 minutes qui suivent, si le client reçoit une autre question avec le sensor File Size (Taille de fichier), le résultat mis en cache est renvoyé. Après 15 minutes, si le client reçoit une question avec le sensor File Size (Taille de fichier), il réexécute le script du sensor pour renvoyer un résultat actualisé. Pour consulter un exemple, reportez-vous à la section Exemple : Âge maximum des données.

Pour améliorer la précision des résultats, utilisez des âges plus courts pour les sensors comportant des valeurs qui changent fréquemment, comme les sensors de statut et d’utilisation. Pour réduire l’utilisation inutile du CPU sur les endpoints, utilisez des âges plus longs pour les sensors comportant des valeurs qui ne changent généralement pas fréquemment, comme le type de châssis ou l’appartenance au domaine Active Directory.

Si vous omettez le Maximum Data Age (Âge maximum des données), le paramètre Max Sensor Age (Âge maximum du sensor) dans la configuration du sensor détermine la durée maximale pour les résultats mis en cache. Reportez-vous au Guide d’utilisation de Tanium Console : Âge maxi. du capteur.

Spécifiez un Maximum Data Age (Âge maximum des données) uniquement lors de l’émission de questions dynamiques, et non lors de la création de questions enregistrées ou de la configuration de l’appartenance de l'endpoint à des groupes de gestion d’ordinateurs et des groupes de filtres. La définition d’un Maximum Data Age (Âge maximum des données) qui est inférieur au Max Sensor Age (Âge maximum du sensor) augmente l’utilisation du CPU sur les endpoints.

Les exemples suivants décrivent comment saisir des options de sensor avancées dans le champ Ask a Question (Poser une question) en utilisant la syntaxe <sensor>?<option>=<value>.

Exemple : Traiter les données comme type

La syntaxe pour filtrer par type de données est <sensor>?type=<type>. L’exemple suivant spécifie Numeric (Numérique) comme type.

Figure 18 : Options de sensor avancées : Traiter les données comme numériques

Le type de données File Size (Taille de fichier) dans le Question Builder correspond au type DataSize dans le champ Ask a Question (Poser une question) où la syntaxe est <sensor>?type=DataSize. L’exemple suivant renvoie les résultats des endpoints dont le dossier d’installation du Tanium Client est d’au moins 10 Go.

Figure 19 : Options de sensor avancées : Traiter les données comme taille de fichier

Utilisez l’option Treat Data as (Traiter les données comme) <type> uniquement avec des opérateurs de comparaison, comme Mémoire libre > 300.

Exemple : Âge maximum des données

La syntaxe utilisée pour définir Maximum Data Age (Âge maximum des données) pour les résultats mis en cache est <sensor>?maxAge=<value>. Dans le Question Builder, vous pouvez spécifier les unités d’âge (minutes, heures, jours). Dans le champ Ask a Question (Poser une question), l’âge est toujours exprimé en secondes. L’exemple suivant indique un âge maximum de 3 600 secondes.

Figure 20 : Options de sensor avancées : Âge maximum des données

Exemple : Sensibilité à la casse

L’option Case Sensitivity (Sensibilité à la casse) dans le Question Builder correspond à l’option ignoreCase dans le champ Ask a Question (Poser une question) où la syntaxe est <sensor>?ignoreCase=[0|1]. La valeur 0 signifie que la casse est respectée et la valeur 1 signifie que la casse est ignorée pour les résultats de sensor avec des lettres. L’exemple suivant spécifie l’option Case Sensitivity (Sensibilité à la casse) avec une valeur définie sur Ignore Case (Ignorer la casse).

Figure 21 : Options de sensor avancées : ignorer la casse

Exemple : Correspondance

Cette option Matching (Mise en correspondance) s’applique uniquement dans la clause from (de) d’une question. La syntaxe de mise en correspondance de tous les résultats pour un sensor est with (avec) [all] <sensor> contains (contient) <value>, où l’omission de l’option all (toutes) spécifie Match Any Value (Mettre en correspondance n’importe quelle valeur). Dans l’exemple suivant, l’option Matching (Mise en correspondance) est réglée sur Match All Values (Mettre en correspondance toutes les valeurs) (with all (avec toutes)) pour le sensor IP Address (Adresse IP). Cet exemple concerne un cas où chaque endpoint peut avoir plusieurs interfaces et où vous souhaitez renvoyer des résultats uniquement à partir des endpoints sur lesquels toutes les interfaces ont une adresse IP qui contient la chaîne 192.

Figure 22 : Options de sensor avancées : mettre toutes les valeurs en correspondance

Exemple : Plusieurs options

Pour spécifier plusieurs options avancées pour un sensor, séparez chaque option par une esperluette &. La syntaxe est <sensor>?<option 1>=<value>&<option 2>=<value>...&<option N>=<value>. L’exemple suivant montre une question comportant deux options pour le sensor Installed Applications (Applications installées) :

Figure 23 : Options de sensor avancées : plusieurs options

Utiliser les options de question avancées

Activez l’option Force Computer ID (Forcer l’ID de l’ordinateur) pour convertir une question de comptage à sensor unique en une question de non-comptage, en forçant les Tanium Clients à inclure l’ID de l’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 obtenir plus de détails, reportez-vous à la section Activer ou désactiver les mises à jour en direct. Vous pouvez activer l’option dans le champ Ask a Question (Poser une question) en utilisant l’énoncé Get?forceComputerIdFlag=1. Vous pouvez également activer l’option dans le Question Builder, sous Advanced Question Options (Options de question avancées).