L’erreur “HTTP Error 400. The size of the request headers is too long” est relativement connue et plutôt bien documentée : elle correspond à l’envoi par une application client (par exemple Teams) d’un cookie (token) d’authentification trop long à son serveur Web, en général parce qu’il contient trop de claims par exemple lorsque l’utilisateur est membre de trop de groupes (phénomène dit de « token bloat »).

Il arrive cependant qu’elle survienne lors de l’authentification depuis un appareil spécifique, alors que tous les autres paramètres sont identiques (même compte, accès au même service dans le même tenant…).
On peut alors supposer que le token est corrompu : l’appareil en question conserve un cookie mal formé ou mal actualisé et tente de l’envoyer au serveur, qui rejette alors la demande.
Lorsque ce problème survient sur un téléphone Android, la première solution qui vient à l’esprit est la classique « suppression des données » de l’application qui échoue à se connecter, voire à désinstaller puis réinstaller cette application. Malheureusement cette manipulation peut ne pas fonctionner en raison d’un mécanisme méconnu : c’est en réalité le gestionnaire de comptes Android qui conserve les tokens d’authentification, pas directement les applications.
Il faut donc supprimer le compte dont l’authentification échoue via les paramètres « Comptes» d’Android pour supprimer le token problématique. La procédure varie légèrement d’un modèle de téléphone à un autre, elle ne sera donc pas détaillée ici, mais l’authentification devrait ensuite fonctionner comme au premier jour !

0 commentaires