Pour sécuriser l'accès à votre application Web Tomcat, vous pouvez implémenter votre contrainte de sécurité simple (par ex. en /var/lib/tomcat7/webapps/*/WEB-INF/web.xml
) comme ci-dessous (ajoutez juste avant la fin </web-app>
):
<!-- This security constraint protects your webapp interface. -->
<login-config>
<!-- Define the Login Configuration -->
<auth-method>BASIC</auth-method>
<realm-name>Webapp</realm-name>
</login-config>
<security-constraint>
<web-resource-collection>
<web-resource-name>Admin</web-resource-name>
<url-pattern>/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>*</role-name>
</auth-constraint>
<!-- Specifying a Secure Connection -->
<user-data-constraint>
<!-- transport-guarantee can be CONFIDENTIAL (forced SSL), INTEGRAL, or NONE -->
<transport-guarantee>NONE</transport-guarantee>
</user-data-constraint>
</security-constraint>
<!-- Authorization, see: tomcat-users.xml -->
<security-role>
<role-name>*</role-name>
</security-role>
L'élément login-config contient l'élément auth-method
, qui spécifie la méthode d'authentification que nous utilisons, qui est BASIC
. L'élément security-constraint
contient 3 éléments: web-resource-collection
, auth-constraint
et user-data-constraint
. La collection de ressources Web spécifie les parties de notre application qui nécessitent une authentification. Le /*
indique que l'ensemble de l'application nécessite une authentification. La contrainte d'authentification spécifie le rôle qu'un utilisateur doit avoir pour accéder aux ressources protégées. La garantie de transport de la contrainte de données utilisateur peut être NONE
, CONFIDENTIAL
ou INTEGRAL
. Nous l'avons défini sur NONE
, ce qui signifie que la redirection vers SSL
n'est pas requise lorsque vous essayez d'atteindre la ressource protégée.
Assurez-vous également que vous avez la ligne:
<Realm className="org.apache.catalina.realm.MemoryRealm" />
dans votre conf/server.xml
(section Engine
). Si vous n'avez modifié aucun fichier de configuration, examinez le fichier conf/tomcat-users.xml
dans votre installation (locate tomcat-users.xml
). Ce fichier doit contenir les informations d'identification pour vous permettre d'utiliser Tomcat webapp.
Par exemple, pour ajouter le rôle de gestionnaire IUG à un utilisateur nommé tomcat
avec un mot de passe s3cret
, ajoutez ce qui suit dans le fichier de configuration ci-dessus:
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
Ensuite, vous pouvez accéder à votre gestionnaire de webapps de /manager/html
(par exemple, rechargement après modification de la configuration).
En savoir plus: Manager App HOW-TO.
Puis redémarrez votre Tomcat et lors de l'accès à votre webapp, il devrait vous demander les bonnes informations d'identification.
Voir aussi: