Aller au contenu

Connexion aux équipements

Lorsqu'Avalon doit se connecter à un équipement réseau (service, WebSSH, data gathering, autodiscovery, ZTP), il détermine automatiquement les identifiants à utiliser en suivant une cascade de résolution.

Cascade de résolution

La résolution s'effectue en 4 étapes, dans l'ordre. Dès qu'une étape aboutit, les suivantes sont ignorées.

Étape 1 — Bypass device type

Si le device type de l'équipement a l'option Bypass other service accounts activée et qu'un service account lui est associé, ce service account est utilisé directement. Aucune autre étape n'est évaluée.

Étape 2 — Identifiants utilisateur

Si le tenant a l'option Force user credentials activée et que l'utilisateur est connecté en session interactive :

  • Avalon cherche les identifiants de l'utilisateur en cache.
  • Si trouvés : ces identifiants sont utilisés.
  • Si expirés ou absents : une popup de saisie apparaît. L'utilisateur doit entrer ses identifiants pour continuer.
Popup de saisie des identifiants
Popup de saisie des identifiants utilisateur.

Une fois saisis, les identifiants sont conservés en cache pendant la durée du TTL configuré sur le tenant. Le temps restant est visible dans la barre de statut.

TTL dans la barre de statut
Le TTL des identifiants affiché dans la barre de statut.

Tâches planifiées

Le scheduler n'est pas une session interactive. Cette étape est automatiquement ignorée pour les tâches planifiées, qui utilisent toujours un service account (étapes 3 ou 4).

Étape 3 — Service account du device type

Si un service account est associé au device type de l'équipement (sans l'option bypass), ce service account est utilisé.

Étape 4 — Service account du tenant

Dernier recours : Avalon utilise le service account associé au tenant. Si aucun service account n'est trouvé à cette étape, l'opération échoue.

Diagramme de résolution

graph TD
    Start[Connexion à un équipement] --> Step1{Bypass activé<br/>sur le device type ?}

    Step1 -->|Oui + SA configuré| UseSABypass[Utiliser le SA<br/>du device type]
    Step1 -->|Non| LiveCheck{Service planifié<br/>ou session interactive ?}

    LiveCheck -->|Service planifié| Step3{SA associé<br/>au device type ?}
    LiveCheck -->|Session interactive| Step2{Force user credentials<br/>activé sur le tenant ?}

    Step2 -->|Oui| CheckCache{Identifiants<br/>en cache ?}
    Step2 -->|Non| Step3

    CheckCache -->|Oui, TTL valide| UseUser[Utiliser les identifiants<br/>de l'utilisateur]
    CheckCache -->|Non ou expirés| Popup[Popup de saisie<br/>des identifiants]
    Popup -->|Saisie confirmée| UseUser

    Step3 -->|Oui| UseSADevice[Utiliser le SA<br/>du device type]
    Step3 -->|Non| Step4{SA associé<br/>au tenant ?}

    Step4 -->|Oui| UseSATenant[Utiliser le SA<br/>du tenant]
    Step4 -->|Non| Error[Erreur :<br/>aucun identifiant trouvé]

    classDef successClass fill:#dcfce7,stroke:#166534,stroke-width:2px,color:#166534;
    classDef failClass fill:#fee2e2,stroke:#991b1b,stroke-width:2px,color:#991b1b;
    classDef neutralClass fill:#dbeafe,stroke:#1D335D,stroke-width:2px,color:#1D335D;
    classDef userClass fill:#BED1ED,stroke:#2F54A1,stroke-width:2px,color:#1D335D;
    classDef popupClass fill:#86A0CB,stroke:#1D335D,stroke-width:2px,color:#fff;

    class UseSABypass,UseSADevice,UseSATenant successClass;
    class Error failClass;
    class Start,Step1,Step2,Step3,Step4,CheckCache,LiveCheck neutralClass;
    class UseUser userClass;
    class Popup popupClass;

Scénarios courants

Scénario Résultat
Service lancé depuis la carte, Force user credentials activé, identifiants en cache Identifiants utilisateur (étape 2)
Service lancé depuis la carte, Force user credentials activé, cache expiré Popup de saisie puis identifiants utilisateur (étape 2)
Service lancé depuis la carte, Force user credentials désactivé SA du device type (étape 3) ou SA du tenant (étape 4)
Tâche planifiée (scheduler) SA du device type (étape 3) ou SA du tenant (étape 4)
Équipement de type firewall avec Bypass + SA dédié SA du device type en priorité absolue (étape 1)

Configuration