Tomcat 7.0 + JSF 2
正しい資格情報でログインした直後に 403 エラーが発生します (資格情報が間違っていると、予想どおり login.xhtml に誘導されます)。Apache で新しいユーザーを作成し、Web サービスを再起動しましたが、まだ接続できません。
tomcat-users.xml
<tomcat-users>
<user name="lala" password="lala!!!" roles="admin-gui,manager-gui" />
<role rolename="administrator"/>
<user username="admin" password="admin" roles="administrator"/>
</tomcat-users>
管理者ではなく、lalaでのみログインできるのはなぜですか(手動で追加しました)。なぜですか?
および server.xml のレルム (Tomcat conf)
under <host>:
<Realm className="com.bannerplay.beans.Admin">
プロジェクトのウェルカム ファイル (login.xhtml) で、j_security_check (フォーム ベースの認証) を使用しました。
<form method="post" action="j_security_check">
<p>
Enter user ID and password:<br/> <br/>
User ID <input type="text" name="j_username"/>
Password <input type="password" name="j_password"/> <br/><br/>
<input type="submit" value="Login"/>
</p>
</form>
そして web.xml をそのように定義しました:
...
<security-constraint>
<display-name>Admin</display-name>
<web-resource-collection>
<web-resource-name>BannerPlay administration Tool</web-resource-name>
<description/>
<url-pattern>/admin/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<description/>
<role-name>administrator</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>com.bannerplay.beans.Admin</realm-name>
<form-login-config>
<form-login-page>/faces/login.xhtml</form-login-page>
<form-error-page>/faces/login.xhtml</form-error-page>
</form-login-config>
</login-config>
<security-role>
<description/>
<role-name>administrator</role-name>
</security-role>
プロジェクトツリー:
localhost:8080/myProject/ にアクセスしようとすると login.xhtml が表示され、正しい資格情報を入力すると (管理者ではなく「lala」ユーザーが機能します)、403 が表示されます。 localhost:8080/myProject/main.xhtml にアクセスしようとすると私は再びログインページにリダイレクトされます.(正しい資格情報の後)
ユーザー lala に「管理者」ロールを追加しようとしましたが、結果は同じです。
私は何をすべきか?ありがとう