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¶
Le comportement de cette étape dépend du mode d'utilisation des comptes utilisateurs configuré sur le tenant :
- Never : cette étape est ignorée, Avalon passe directement à l'étape 3.
- WebSSH Only : les identifiants utilisateur ne sont utilisés que pour les sessions WebSSH. Pour toutes les autres actions (services, data gathering, autodiscovery), Avalon passe à l'étape 3.
- Always : toutes les actions interactives utilisent les identifiants de l'utilisateur. La popup de saisie apparaît systématiquement, même si les device types concernés ont le bypass activé. Le backend détermine ensuite pour chaque équipement s'il utilise les identifiants saisis ou le SA du device type.
Pour les modes Always et WebSSH Only (quand applicable) :
- 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.
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. L'icône Clear credentials (à côté du compteur TTL) permet de vider manuellement le cache et de ressaisir de nouveaux identifiants sans se déconnecter.
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{Mode d'utilisation<br/>des comptes utilisateurs ?}
Step2 -->|Never| Step3
Step2 -->|WebSSH Only| WebSSHCheck{Session<br/>WebSSH ?}
Step2 -->|Always| CheckCache{Identifiants<br/>en cache ?}
WebSSHCheck -->|Non| Step3
WebSSHCheck -->|Oui| CheckCache
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,WebSSHCheck neutralClass;
class UseUser userClass;
class Popup popupClass;
Scénarios courants¶
| N° | Mode | Action | Source | Résultat |
|---|---|---|---|---|
| 1 | Always | Service | Carte / Eng. Rules | SA device type (bypass) → Creds utilisateur |
| 2 | Always | AutoDiscovery | Carte | SA device type (bypass) → Creds utilisateur |
| 3 | Always | WebSSH | Carte | SA device type (bypass) → Creds utilisateur |
| 4 | WebSSH Only | WebSSH | Carte | SA device type (bypass) → Creds utilisateur |
| 5 | WebSSH Only | Service | Carte / Eng. Rules | SA device type (bypass) → SA device type → SA tenant |
| 6 | WebSSH Only | AutoDiscovery | Carte | SA device type (bypass) → SA device type → SA tenant |
| 7 | Never | Toute | Carte / Eng. Rules | SA device type (bypass) → SA device type → SA tenant |
| 8 | Tout mode | Toute | Schedule | SA device type (bypass) → SA device type → SA tenant |
Configuration¶
- Service accounts : créez et gérez les SA depuis Administration > Service Accounts
- Mode d'utilisation et TTL : configurez ces options sur le tenant
- Bypass et SA par device type : configurez ces options sur le device type