Table of Contents

Configuration de référence

La version .NET se configure dans appsettings.json, à côté de l'application. Les secrets (clés du webhook, identifiants de vos systèmes) n'y vont jamais : ils vont dans le fichier de secrets.

Format

Les clés sont des sections JSON imbriquées. La clé Connector:filesystem:OutputPath s'écrit ainsi :

{
  "Connector": {
    "filesystem": {
      "OutputPath": "D:\\SESARWebHook\\Output\\"
    }
  }
}

Dans un chemin Windows, doublez chaque barre oblique inverse. Comme dans toute application ASP.NET Core, une variable d'environnement peut remplacer une clé, avec __ comme séparateur : Connector__filesystem__OutputPath.

Clés

Clé Défaut Effet
DefaultConnectorId filesystem Connecteur appelé par POST /api/webhook.
HandlersPath Handlers, dans le dossier de l'application Dossier des DLL de gestionnaires. Le chemin est utilisé tel quel : ~ n'est pas résolu. La route POST /api/handlers/rescan ignore ce réglage et relit le dossier par défaut.
ConnectorsSecretsPath connectors.secrets.json, dans le dossier de l'application Chemin complet du fichier de secrets, nom du fichier compris.
FileEntropy vide Entropie DPAPI, en Base64. Voir Secrets et DPAPI.
DataProtectionScope CurrentUser Portée DPAPI : CurrentUser ou LocalMachine. Toute autre valeur donne CurrentUser.
EnableDebugEndpoints false true active les routes /api/debug/*. Jamais en production.
Connector:{id}:* selon le connecteur Réglages d'un connecteur intégré : voir sa page.
Connector:generic:DefaultHandlerId aucun Gestionnaire appelé par POST /api/webhook/generic.
Handler:{id}:* aucun Réglages d'un gestionnaire, transmis à son Initialize.
AllowedHosts * Noms d'hôte acceptés par ASP.NET Core. Restreignez-le au nom de votre serveur.
Logging:LogLevel Information, Warning pour Microsoft.AspNetCore Journalisation d'ASP.NET Core.

Clés sans effet dans cette version

Ces clés figurent dans appsettings.json, mais aucun traitement ne les applique :

Clé Ce qu'elle fait réellement
Connector:{id}:Enabled Affichée par GET /api/connectors. Elle ne désactive pas le connecteur : il traite les requêtes reçues à son adresse.
Handler:{id}:Enabled Affichée par GET /api/handlers. Même limite.
EnableDetailedLogging Affichée par GET /api/health/status.
LogPath Aucun journal n'y est écrit.

Pour qu'un connecteur ne soit jamais appelé, ne laissez joignable que l'adresse que SESAR utilise : voir Sécuriser le déploiement.

Réglages et secrets d'un connecteur ou d'un gestionnaire

L'application fusionne, pour chaque connecteur ou gestionnaire :

  1. les clés de sa section dans appsettings.json (Connector:{id} ou Handler:{id}) ;
  2. ses secrets dans le fichier de secrets (Connectors.{id}.Secrets ou Handlers.{id}.Secrets).

Un secret l'emporte sur une clé de même nom. Le résultat est lu une seule fois, puis gardé en mémoire : redémarrez l'application après toute modification.