Compte Utilisateur et Autorisation CLI Web
Cette section décrit la gestion de l'espace personnel de l'opérateur (/account) ainsi que le flux d'autorisation sécurisé en navigateur lors de l'exécution de la commande tk-ota-push login (/cli/login).
1. Espace Profil Opérateur (/account)
Accessible via l'icône utilisateur ou directement sur /account (src/app/account/page.tsx), cette page regroupe l'identité de l'opérateur et un récapitulatif de sécurité en direct :
Fonctionnalités de la page Mon Compte
- Identité & Rôle : Affichage de votre nom, adresse email, organisation de rattachement et rôle RBAC.
- Clés d'API personnelles : Génération et révocation de vos jetons d'accès pour la CLI et les scripts CI/CD.
- Sécurité du compte : Gestion du mot de passe et activation de l'authentification à double facteur (2FA).
Déroulement de la connexion CLI via la Console
- Le développeur exécute
tk-ota-push logindans son terminal. - Le navigateur s'ouvre sur la page d'autorisation de la Console Web.
- L'utilisateur confirme l'accès à son compte.
- La CLI reçoit le jeton de session sécurisé et confirme la connexion.
Indicateurs de Synthèse
- Badge de Rôle : Rappel visuel du rôle d'habilitation actif (
ROLE_ADMIN,ROLE_RELEASE_DEVELOPER, etc.). - Indicateur de Moteur de signature : État de disponibilité du moteur de signature moteur cryptographique.
- Gouvernance Active : Indique si le mode 4-Yeux strict est actuellement exigé pour l'organisation.
- Activité d'Audit : Nombre total d'événements certifiés enregistrés pour le tenant en cours.
2. La Passerelle d'Autorisation CLI (/cli/login)
L'outil en ligne de commande tk-ota-push (ou shorebird) utilise le protocole d'autorisation par code d'échange avec défi cryptographique PKCE (Proof Key for Code Exchange) pour s'authentifier auprès de la plateforme souveraine :
Fonctionnalités de la page Mon Compte
- Identité & Rôle : Affichage de votre nom, adresse email, organisation de rattachement et rôle RBAC.
- Clés d'API personnelles : Génération et révocation de vos jetons d'accès pour la CLI et les scripts CI/CD.
- Sécurité du compte : Gestion du mot de passe et activation de l'authentification à double facteur (2FA).
Déroulement de la connexion CLI via la Console
- Le développeur exécute
tk-ota-push logindans son terminal. - Le navigateur s'ouvre sur la page d'autorisation de la Console Web.
- L'utilisateur confirme l'accès à son compte.
- La CLI reçoit le jeton de session sécurisé et confirme la connexion.
3. Paramètres de Requête Traités par /cli/login
L'écran d'autorisation extrait et valide les paramètres passés dans l'URL :
| Paramètre | Description | Exemple |
|---|---|---|
redirect_uri / callback_url | URL de rappel du serveur local du CLI | http://127.0.0.1:45213/callback |
code_challenge | Empreinte SHA-256 du secret aléatoire généré par le CLI | E9Melhoa2OwvFrGMTJguCH5... |
state | Chaîne aléatoire prévenant les attaques CSRF | 7b4f8c92a |
device_name | Nom d'hôte de la machine cliente transmettant la requête | MacBook-Pro-de-Dev.local |
4. Gardes-Fous de Sécurité du Login CLI
- Profils autorisés : Seuls les utilisateurs ayant le rôle
ROLE_ADMINouROLE_RELEASE_DEVELOPERsont autorisés à consentir une session CLI. Si un auditeur ou un responsable sécurité tente de valider la page, l'accès est bloqué avec un avertissement de séparation des privilèges. - Expiration stricte : Le code d'autorisation temporaire émis par le backend expire au bout de 120 secondes.
- Audit de connexion : Chaque émission de jeton CLI est inscrite dans la table d'audit immuable avec le nom de l'appareil et l'adresse IP source.
- Révocation à distance : Depuis la page
/teamsou/account, un administrateur peut révoquer instantanément tous les jetons CLI actifs d'un utilisateur.