Journalisation
FoxIDs enregistre par défaut les avertissements, les erreurs, les erreurs critiques et les événements. Les entrées du journal comprennent un horodatage et le contexte pertinent de la requête ou de l'identité, tel que l'adresse IP du client, lorsqu'elle est disponible. Des traces et des métriques supplémentaires peuvent être activées par environnement à des fins de diagnostic.
Dépannage des erreurs du navigateur
La page d’erreur du navigateur affiche un message générique en cas d’échec inattendu, ainsi que l’heure et l’identifiant d’opération lorsqu’il est disponible. Si la séquence de connexion ou d’action sur le compte peut être identifiée, la page affiche également son identifiant de séquence. Utilisez l’identifiant d’opération pour trouver la requête en échec et l’identifiant de séquence pour suivre les opérations associées dans les journaux de FoxIDs Control ou dans la destination de journalisation configurée. Les situations connues auxquelles il est possible de remédier, comme l’expiration du délai de connexion, peuvent afficher des indications spécifiques et une option permettant de réessayer. Si une fonctionnalité n’est pas disponible dans le forfait actuel, la page affiche le nom du forfait et des indications pour passer à un forfait supérieur. Les parcours liés au compte peuvent également fournir un message d’interface spécifique et localisé, par exemple concernant un numéro de téléphone manquant requis pour l’authentification à deux facteurs.
Les messages d’exception techniques, les traces de pile et les diagnostics du connecteur ne sont affichés sur la page d’erreur générique dans aucun environnement d’hébergement. Si la gestion des erreurs échoue elle-même, la page de secours conserve également les détails techniques dans les journaux. Consultez les journaux de diagnostic uniquement avec un accès administrateur autorisé ; ne partagez pas leur contenu avec un appelant non authentifié.
Destinations des journaux
Définissez la destination du journal à l'aide de Settings__Options__Log. FoxIDs prend en charge trois options :
Stdoutenregistre les journaux dans la sortie de la console. Cette option convient aux petits déploiements Docker et Kubernetes, dans lesquels la plateforme d’hébergement collecte les journaux de la console.OpenSearchAndStdoutErrorsenregistre des journaux consultables sur OpenSearch et transmet également les erreurs à la sortie de la console. Cette option est couramment utilisée pour les déploiements Kubernetes.ApplicationInsightsenvoie des journaux consultables vers Azure Application Insights. Cette option est couramment utilisée pour les déploiements Azure.
FoxIDs Control peut effectuer des recherches dans les journaux, les données d'utilisation et d'audit lorsque l'option OpenSearchAndStdoutErrors ou ApplicationInsights est configurée. Avec Stdout, utilisez les fonctionnalités de journalisation fournies par la plateforme d'hébergement.
Format stdout et niveau minimal
FoxIDs utilise la configuration de journalisation .NET Console standard sous Logging:Console pour la sortie écrite dans stdout. Le formateur de texte simple est utilisé sauf si un autre formateur est configuré. Le déploiement Kubernetes fourni sélectionne le formateur JSON afin que chaque entrée de journal puisse être collectée sous la forme d'une seule ligne structurée.
Avec le formateur JSON, le texte du journal est écrit dans Message, les propriétés contextuelles telles que RequestId, RequestPath, le tenant et l'environnement sont écrites dans des champs distincts sous State, et les détails des exceptions sont écrits dans Exception. Les métriques comprennent également une valeur numérique dans State.Value. Par défaut, les entrées JSON utilisent des horodatages UTC au format yyyy-MM-ddTHH:mm:ss.fffZ. Le formateur simple conserve la représentation textuelle multiligne.
Définissez le formateur JSON à l'aide d'une variable d'environnement :
Logging__Console__FormatterName=json
Les valeurs d'horodatage par défaut peuvent être remplacées à l'aide des options standard du formateur, par exemple :
Logging__Console__FormatterOptions__TimestampFormat=yyyy-MM-ddTHH:mm:ssZ
Logging__Console__FormatterOptions__UseUtcTimestamp=true
Le niveau minimal de journalisation Console est Trace par défaut, ce qui conserve tous les types de journaux activés dans les paramètres de journalisation de l'environnement FoxIDs. Vous pouvez augmenter indépendamment le niveau minimal pour chaque déploiement, par exemple :
Logging__Console__LogLevel__Default=Information
Le niveau minimal affecte la sortie stdout comme suit :
| Niveau minimal | Sortie stdout |
|---|---|
Trace |
Traces, événements, métriques, avertissements et erreurs |
Information |
Événements, métriques, avertissements et erreurs |
Warning |
Avertissements et erreurs |
Error |
Erreurs et erreurs critiques |
Critical |
Erreurs critiques uniquement |
Le niveau minimal de journalisation Console est un filtre supplémentaire. Il n'active pas les traces ni les métriques désactivées dans les paramètres de journalisation de l'environnement.
Journaux dans FoxIDs Control
Ouvrez la rubrique Journaux dans le FoxIDs Control Client pour basculer entre les journaux opérationnels, les journaux d'utilisation, les journaux d'audit et les paramètres des journaux d'environnement.
Journaux
L'onglet Journaux permet d'effectuer des recherches dans les entrées des journaux d'exploitation. Sélectionnez la période et les types de journaux, puis saisissez éventuellement un texte de recherche pour affiner les résultats. Les erreurs et les avertissements sont sélectionnés par défaut. Dans un environnement standard, les événements sont également sélectionnés par défaut, tandis que les traces et les métriques sont disponibles lorsqu'elles ont été activées dans les paramètres de journalisation de l'environnement.
Les requêtes rejetées avant le routage vers le tenant et l'environnement sont classées comme requêtes rejetées et exclues des événements ordinaires. Dans le tenant principal, sélectionnez requêtes rejetées pour les examiner selon le chemin de la requête, la méthode HTTP et le contexte de requête disponible. Les requêtes rejetées ne sont pas disponibles dans les autres tenants.
Les entrées associées sont regroupées par séquence et par opération, ce qui vous permet de suivre un flux d'authentification ou une requête, et d'en examiner les événements, les propriétés contextuelles et les exceptions.

Utilisation
L'onglet Utilisations résume l'activité pour une période et un intervalle sélectionnés. Vous pouvez inclure les méthodes d'authentification, les utilisateurs, les connexions, les demandes de jetons, les opérations supplémentaires et les appels à Control API.
Le périmètre d'administration sélectionné détermine l'utilisation affichée :
- Dans un environnement standard, le résultat présente les données d'utilisation propres à cet environnement.
- Dans l'environnement principal d'un locataire, le résultat présente les données d'utilisation pour l'ensemble du locataire et peut être limité à un environnement particulier.
- Dans l'environnement principal du locataire principal, le résultat présente les données d'utilisation pour l'ensemble du déploiement de FoxIDs et peut être limité à un locataire et à un environnement.

Journaux d'audit
L'onglet Audit consigne les activités utilisateur pertinentes pour la sécurité et les modifications administratives. La recherche dans les journaux d'audit est disponible avec OpenSearchAndStdoutErrors et ApplicationInsights ; elle n'est pas disponible lorsque la destination des journaux est Stdout.
Sélectionnez une période allant jusqu'à sept jours et saisissez éventuellement un texte à rechercher. Une recherche renvoie jusqu'à 300 des enregistrements correspondants les plus récents et affiche un avertissement lorsque le résultat est tronqué. Le texte est recherché dans le nom de l'événement, le type d'audit, l'action, les identifiants utilisateur, la méthode d'authentification, l'ID d'enregistrement ou de document, le tenant, l'environnement et les données modifiées.
Les enregistrements d'audit utilisent les types suivants :
| Type d'audit | Activité consignée |
|---|---|
Data |
Modifications administratives de données effectuées via FoxIDs Control ou la Control API. |
Login |
Connexion utilisateur effectuée via une méthode d'authentification. |
Logout |
Déconnexion utilisateur effectuée via une méthode d'authentification. |
ChangePassword |
Modification du mot de passe d'un utilisateur. |
CreateUser |
Création d'un utilisateur pendant un flux de connexion. |
RegisterAuthenticatorApp |
Enregistrement d'une application d'authentification pour un utilisateur. |
Chaque enregistrement affiche le type d'audit et le contexte disponible. Une activité utilisateur peut inclure l'ID utilisateur, l'adresse e-mail, le numéro de téléphone, le nom d'utilisateur, l'ID de session et la méthode d'authentification. Seuls les identifiants disponibles dans les claims de connexion ou la session sont consignés. L'enregistrement d'une application d'authentification inclut également son RegistrationId.
Pour un enregistrement Data, DataType identifie le type de données de configuration, DocumentId identifie l'élément concerné et Action vaut Create, Update, Save ou Delete. Les données JSON mises en forme présentent les valeurs modifiées avec les valeurs before et after, le cas échéant. Les propriétés sensibles telles que les secrets, les hachages, les nonces et les clés sont masquées.
La portée d'administration sélectionnée détermine les enregistrements d'audit qui peuvent être recherchés :
- Dans un environnement standard, le résultat contient les enregistrements de cet environnement.
- Dans l'environnement maître d'un tenant, le résultat contient les enregistrements de ce tenant et peut être limité à un environnement particulier.
- Dans l'environnement maître du tenant maître, le résultat contient les enregistrements de l'ensemble du déploiement FoxIDs et peut être limité à un tenant et un environnement.

Paramètres de journalisation
Ouvrez Journaux > Paramètres pour configurer le niveau de détail des informations de diagnostic enregistrées pour l'environnement sélectionné :
- La trace des informations de connexion enregistre les détails relatifs aux séquences de connexion et de déconnexion.
- La trace des revendications enregistre les revendications reçues, transmises ou émises par les méthodes d'authentification et les enregistrements d'applications.
- La trace des messages enregistre les messages de protocole bruts reçus et envoyés.
- La trace des métriques enregistre les temps de réponse et le débit.
Les avertissements, les erreurs, les erreurs critiques et les événements continuent d'être consignés indépendamment de ces paramètres.
Les traces de revendications et de messages peuvent contenir des données à caractère personnel, des jetons et d'autres informations sensibles liées au protocole. N'activez-les que lorsque cela est nécessaire à des fins de diagnostic, limitez l'accès au magasin de journaux et appliquez une durée de conservation appropriée.

Flux de journaux
Un flux de journaux transfère certains types de journaux vers un référentiel externe, indépendamment de la destination principale configurée pour les journaux. Par exemple, ajoutez un flux de journaux Azure Application Insights et sélectionnez les types de journaux que FoxIDs doit envoyer.
