Files
nas-runbooks/common/MAIL-BROWSER-HERMES-TT.md
T

45 lines
2.5 KiB
Markdown

# Acces boite mail O365 pro (hermes-tt) — historique et decision
## Echec V0 : hermes-mail-proxy (Graph API device code flow)
Tentative : client public officiel Microsoft ("Microsoft Graph Command Line Tools",
client_id 14d82eec-204b-4c2f-b7e8-296a70dab67e) via MSAL device code flow, pour
contourner le besoin d'enregistrement d'appli Azure AD (bloque en self-service sur
le tenant TT). Code deploye port 3060 (hermes-mail-proxy), jamais authentifie :
consentement Mail.Read/Mail.ReadWrite/Mail.Send bloque par l'admin meme sur ce
client pre-consenti. Confirme le 22/07/2026 (curl /auth/status -> authenticated:false
apres plusieurs semaines up). Container arrete et supprime le 22/07/2026, port 3060
libere. Ne pas retenter la voie Graph API sur ce tenant sans intervention admin TT.
## Decision V1 : hermes-mail-browser (session navigateur persistante)
Principe : authentification 100% humaine (Nabil, MFA inclus) via noVNC sur un
navigateur reel tournant sur le NAS (IP maison tunisienne). L'automatisation ne
fait QUE lire sur la session deja ouverte — jamais de re-authentification
automatisee, jamais de credentials stockes en clair.
Stack :
- Microsoft Edge reel (channel msedge, pas Chromium generique) — fingerprint
Sec-CH-UA coherent avec un poste Windows corporate, reduction des heuristiques
de detection cote Defender for Cloud Apps.
- Affichage virtuel Xvfb + x11vnc, expose uniquement en LAN via noVNC (port 8810,
bind 192.168.100.33, AUCUN vhost DSM, AUCUN reverse-proxy).
- Edge lance en persistant (--user-data-dir sur volume monte, profil survit aux
redemarrages) avec remote debugging port 9222 (localhost uniquement).
- API FastAPI (port 3110) se connecte au MEME navigateur via CDP
(connect_over_cdp) — pas d'instance separee — pour lire la boite de reception.
hermes-tt consomme cette API en lecture seule.
Scope Phase 1 (lecture seule) : liste boite de reception (expediteur, objet, date,
lu/non lu, apercu), lecture corps complet d'un mail. Aucune action d'ecriture
(envoi, suppression, deplacement) en V1.
Gestion expiration session : l'API detecte l'atterrissage sur
login.microsoftonline.com et renvoie 409 "reauthentification manuelle requise"
plutot que de tenter quoi que ce soit — Nabil rouvre noVNC, se reauthentifie,
la session persiste a nouveau.
Ports : 3110 (API interne), 8810 (noVNC, LAN uniquement). Conteneur :
hermes-mail-browser, reseau n8n, UID/GID 1026:100, volume data/ pour le profil
navigateur.
Statut : conteneur deploye et sain, en attente authentification manuelle (22/07/2026).