J'essaie d'utiliser le hachage pour un cas de test dans tomcat-users.xml. (Je prévois mettre en œuvre une sous-classe de l'une des classes de royaume pour faire le véritable authentification avec l'audit, l'exploitation forestière, etc.) J'ai couru la commandeHashing mots de passe tomcat
$TOMCAT_HOME/bin/digest.sh -a sha secret
et a obtenu le résultat «secret: e5e9fa1ba31ecd1ae84f75caaa474f3a663f05f4. J'ai collé ceci dans le
<user password="e5e9fa1ba31ecd1ae84f75caaa474f3a663f05f4" roles="test" username="tester"/>
ligne. J'ai ajouté les mots magiques appropriés à mon fichier web.xml pour utiliser l'authentification DIGEST pour le servlet (rôle = test), mais lorsque j'essaie de me connecter, j'obtiens une erreur 401. J'ai "regardé" les transactions avec wireshark, et il semble que le navigateur envoie toutes les bonnes réponses.
Est-ce que je fais cela correctement? Il me semble que l'authentification digest va renvoyer MD5 ("nom d'utilisateur: domaine: mot de passe"), donc il n'y a aucun moyen pour tomcat de comparer la valeur stockée dans le fichier tomcat-users.xml avec la valeur envoyée par le navigateur, car cela nécessiterait de "désassembler" la valeur du mot de passe de tomcat-users.xml ou "username: realm: password".
Devrais-je stocker le hachage de "nom d'utilisateur: domaine: mot de passe" à la place?