Sécurité Tomcat
1. Considérations de sécurité
2. Authentification, autorisation et chiffrement
2.1. Configurer un mot de passe utilisateur chiffré
Il est aujourd’hui conseillé d’utiliser un algortithme de chiffrement fort avec un mot de passe fort tel que sha-512 ou sha-256 pour stocker cette donnée importante.
La première étape consiste à activer le chiffrement sha-512 pour l’authentification des utilisateurs en éditant le fichier de configuration $CATALINA_HOME/conf/server.xml
pour que l’entrée suivante apparaisse telle quelle :
<Realm className="org.apache.catalina.realm.LockOutRealm">
<!-- This Realm uses the UserDatabase configured in the global JNDI
resources under the key "UserDatabase". Any edits
that are performed against this UserDatabase are immediately
available for use by the Realm. -->
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase">
<CredentialHandler className="org.apache.catalina.realm.MessageDigestCredentialHandler" algorithm="sha-512" />
</Realm>
</Realm>
Ensuite générer un condensat sha-512 sur base d’un mot de passe fort :
admin_password=$(openssl rand -base64 16)
./digest.sh -a sha-512 -h org.apache.catalina.realm.MessageDigestCredentialHandler ${admin_password}
Source : How to use digest authentication in Tomcat 8.5?