Piles d'entrée/sortie dans la vue Trace

Le panneau supérieur gauche affiche les piles d'entrée et de sortie. La pile est une séquence d'appels qui se terminent soit sur une source (pile d'entrée), soit sur un collecteur (pile de sortie).

Flux de données

Le panneau inférieur gauche héberge le flux de données pour la méthode sélectionnée. Les données peuvent circuler via un appel de méthode ou une affectation. La section flux de données affiche le numéro de ligne dans le code source où figurent l'élément et le contexte.

Graphe d'appels

Remarque : Dans une trace JavaScript™, un Diagramme d'instructions JavaScript s'affiche, plutôt qu'un diagramme d'appels graphique.

Ce diagramme est une représentation graphique du graphe d'appels. Chaque appel de méthode est représenté par un rectangle dans le graphique affichant le nom de classe et le nom de méthode :

  • Une couleur rouge indique que l'appel de méthode concerne une source, un collecteur, ou les deux.
  • Un collecteur indéterminé est une méthode API qui ne peut plus faire l'objet d'une trace. Un collecteur indéterminé virtuel est un collecteur indéterminé qui est également une fonction virtuelle (une fonction qui peut avoir plusieurs mises en oeuvre). La couleur jaune identifie l'appel de méthode comme concernant un collecteur indéterminé ou un collecteur indéterminé virtuel.
  • La couleur bleue indique que l'appel de méthode n'est pas une routine de validation/codage.
  • La couleur grise représente tous les autres types de nœud de trace.

Chaque appel de méthode est divisé en trois sections : le nom de classe, le nom de méthode et le nom d'argument entaché. L'infobulle associée à l'appel de méthode fournit plus de détails.

Les lignes avec des flèches représentent des appels d'une méthode à une autre. Une tête de flèche creuse indique l'absence de données entachées connues dans l'appel, tandis qu'une flèche pleine indique un flux de données entachées. Une flèche discontinue indique une instruction de retour.

Symbole Description

Connecteur de trace pour appel de méthode sans données entachées
Appel de méthode sans données entachées connues

Connecteur de trace pour appel de méthode avec données entachées
Appel de méthode avec données entachées

Connecteur de trace pour retour avec données entachées
Retour avec données entachées

Source
Source (rouge) : méthode, fonction ou paramètre à l'origine de données potentiellement non sécurisées.

Collecteur
Collecteur (rouge) : méthode ou fonction potentiellement vulnérable aux données entachées ou dont l'utilisation est potentiellement dangereuse.

Collecteur indéterminé
Collecteur indéterminé (jaune) : méthode/fonction potentiellement vulnérable aux données entachées ou dont l'utilisation est potentiellement dangereuse.

Collecteur indéterminé virtuel
Collecteur indéterminé virtuel (jaune) : type de collecteur indéterminé qui est résolu par plusieurs implémentations concrètes.

N'est pas une routine de validation
N'est pas une routine de validation (bleu). Le marquage d'une API comme n'étant pas une routine de validation/codage indique que cette API ne valide aucune donnée.

Propagateur de tache
Propagateur de tâche : fonction ou méthode qui propage une tâche à un ou plusieurs de ses paramètres, à sa valeur de retour ou à ce pointeur.
Conseil :
  • Dans la vue Trace, le fait de survoler des noeuds de trace dans le graphique permet d'afficher des informations sur ces noeuds.
  • Les deux panneaux de gauche de la vue (le panneau des piles d'entrée/sortie et le panneau des flux de données) peuvent être réduits pour améliorer l'affichage du diagramme d'appels graphique. Pour réduire ces panneaux, sélectionnez la flèche de masquage de l'arborescence. Pour afficher ces panneaux lorsqu'ils sont masqués, sélectionnez la flèche d'affichage de l'arborescence.
  • Déplacez la barre de défilement pour effectuer un zoom avant détaillé ou effectuer un zoom arrière pour une vue plus générale. Si vous survolez la barre de défilement du zoom, le niveau de zoom actuel s'affiche. Pour effectuer un zoom avant maximum, sélectionnez le zoom à 200 %. Pour effectuer un zoom arrière maximal, sélectionnez le zoom pour ajuster.