Bonjour,
Je suis entrain de faire une application d'authentidcation pour mon application web;
l'accés a cette application est valide que pour un abonné(chacun a sa session) ou l'administrateur.
j'utilse pour cela tomcat 5.5.26 comme serveur d'application;
voici ce que j'ai fait:
tomcat_users.xml
<tomcat-users>
<role rolename="admin"/>
<role rolename="user"/>
<user name="administrateur" password="admin01" roles="admin" />
<user name="utilisateur" password="user01" roles="user" />
</tomcat-users>
configuration du fichier web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<security-constraint>
<display-name>Example Security</display-name>
<web-resource-collection>
<web-resource-name>Protected</web-resource-name>
<url-pattern>/Authentification/*</url-pattern>
<http-method>GET</http-method>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>admin</role-name>
<role-name>user</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/error.jsp</form-error-page>
</form-login-config>
</login-config>
</web-app>
mon code login.jsp
<html>
<head>
<title>Login Page</title>
<body bgcolor="white">
<form method="POST" action='<%= response.encodeURL("j_security_check" ) %>' >
<table border="0" cellspacing="5">
<tr>
<th align="right">Username:</th>
<td align="left"><input type="text" name="j_username"></td>
</tr>
<tr>
<th align="right">Password:</th>
<td align="left"><input type="password" name="j_password"></td>
</tr>
<tr>
<td align="right"><input type="submit" value="Log In"></td>
<td align="left"><input type="reset"></td>
</tr>
</table>
</form>
</body>
</html>
le code error.jsp
<html>
<head>
<title>Error Page</title>
</head>
<body bgcolor="white">
Invalid username and/or password, please try
<a href='<%= response.encodeURL("login.jsp" ) %>'>again</a>.
</body>
</html>
mon probleme c'est que la page login.jsp m'envoi toujours vers error.jsp meme si login=administratur ou utilisateur et password=admin01 ou user01.
j'ai fait aussi deux tables dans postgresql user (content login et password) et role (qui contient login et role)
et j'ai configurer server.xml en ajoutant :
<Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
driverName="org.postgresql.Driver"
connectionURL="jdbc:postgresql://localhost:5432/base;user=postgres;password=12345"
userTable="user" userNameCol="login" userCredCol="password"
userRoleTable="role" roleNameCol="role" />
Avez vous une idée?
Message édité par tomhanks le 24-04-2008 à 12:22:54