% ============================================================================= % ANNEXE B : TABLEAU COMPARATIF SYNTHÉTIQUE % ============================================================================= \chapter{Tableau comparatif synthétique} \label{annex:comparison} \begin{table}[htbp] \centering \caption{Comparatif des méthodes d'authentification} \label{tab:comparison} \begin{tabularx}{\textwidth}{L{2cm} L{2.5cm} L{2.5cm} L{2cm} L{2cm} L{2.5cm}} \toprule \textbf{Méthode} & \textbf{Périmètre} & \textbf{Identifiants} & \textbf{Expiration} & \textbf{Complexité} & \textbf{Statut dans \texttt{pronote-sync}} \\ \midrule \textbf{URL iCal sécurisée} & EDT + devoirs (si inclus dans le flux) & Jeton URL & Longue durée (dépend de l'instance) & Très faible & \emojicheck\ Pris en charge \\ \textbf{Connexion directe} (mot de passe + ENT) & Agenda/EDT, devoirs, messages & Identifiant + mot de passe + ENT & Session dépendante de l'instance & Élevée & \emojicheck\ Pris en charge \\ \textbf{QR Code + token mobile} & Agenda/EDT, devoirs, messages & PIN 4 chiffres \rightarrow token + UUID & QR ~10 min ({\warningicon\ hypothèse}) ; token dépendant de l'instance & Modérée & \emojicheck\ Pris en charge \\ \textbf{SSO ENT (CAS/SAML)} & — & Identifiants ENT & Session ENT & Très élevée & \emojicross\ Non implémenté (seuls les 30 ENT de la liste fermée \texttt{\_ENT\_NAMES} sont supportés via \texttt{pronotepy}) \\ \textbf{EduConnect} & — & Identifiants nationaux & Session EduConnect & Très élevée & \emojicross\ Non implémenté \\ \textbf{CAS direct} & — & Identifiants CAS & Ticket single-use & Modérée & \emojicross\ Non implémenté \\ \textbf{API publique} & N/A & N/A & N/A & N/A & \emojicross\ Inexistante \\ \bottomrule \end{tabularx} \end{table} \section*{Légende} \addcontentsline{toc}{section}{Légende} \begin{itemize} \item \textbf{Périmètre} : Les méthodes \textbf{iCal} sont en lecture seule (EDT + devoirs si inclus dans le flux). Les méthodes \textbf{Connexion directe} et \textbf{QR Code + token mobile} permettent les opérations \texttt{pronotepy} effectivement implémentées par ce projet (agenda, devoirs, messages ; informations ignorées en mode \texttt{qr\_token}). \item \textbf{QR ~10 min} : {\warningicon\ \textbf{Hypothèse non vérifiée}} (observé dans \texttt{pronotepy} via un message d'exception, dépend de l'instance). \item \textbf{Session dépendante de l'instance} : {\warningicon\ \textbf{Hypothèse non vérifiée}} (nécessite un essai réel). \end{itemize} % ============================================================================= % FIN DE L'ANNEXE % =============================================================================