- PR -

JSP+MySQL+JDBC+Form認証

1
投稿者投稿内容
ぎんが
常連さん
会議室デビュー日: 2003/09/09
投稿数: 24
投稿日時: 2004-01-07 00:00
上記環境にて,Tomcat4.1\conf\server.xmlと http://localhost/A/WEB-INF/web.xml
の一部を下記のように設定,mysqlにはmanとcatの2つのデータベースを作成しています.
データベースcatのデータにアクセスするjspファイルへ遷移するリンクをクリックした際login.jspが起動,ログイン後,
「HTTP Status 403 - リクエストされたリソースへのアクセスが拒否されました」
というエラーが表示されます.
対策をご教示いただけないでしょうか.よろしくお願いいたします.
尚,説明不足の部分がありましたらご指摘お願いいたします.


********Tomcat4.1\conf\server.xml**********
<Realm className="org.apache.catalina.realm.JDBCRealm" debug="99"
driverName="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost/man"
connectionName="ex" connectionPassword=""
userTable="users" userNameCol="user_name" userCredCol="user_pass"
userRoleTable="user_roles" roleNameCol="role_name" />

********http://localhost/A/WEB-INF/web.xml************
<web-app>
<security-constraint>
<display-name>Security Constraint</display-name>
<web-resource-collection>
<web-resource-name>Main Management</web-resource-name>
<url-pattern>/data/*</url-pattern>
<url-pattern>/manage/*</url-pattern>
<http-method>DELETE</http-method>
<http-method>GET</http-method>
<http-method>POST</http-method>
<http-method>PUT</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>ex-manage</role-name>
<role-name>ex-user</role-name>
</auth-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
<realm-name>Ex Management</realm-name>
</login-config>
<login-config>
<auth-method>FORM</auth-method>
<realm-name>Ex User</realm-name>
<form-login-config>
<form-login-page>/login.jsp</form-login-page>
<form-error-page>/invalid.jsp</form-error-page>
</form-login-config>
</login-config>


******************************************
ローレル
会議室デビュー日: 2003/11/16
投稿数: 3
投稿日時: 2004-01-07 11:51
ちなみに<login-config>って複数可能でしたっけ?
ぎんが
常連さん
会議室デビュー日: 2003/09/09
投稿数: 24
投稿日時: 2004-01-08 17:35
解決しました!!!!!

A/WEB-INF/web.xmlにおいて

(1)BASIC認証の部分の記述を削除し,次の部分を追加

<security-role>
<role-name>ex-manage</role-name>
</security-role>

(2)
Mysqlのデータベースmanのテーブルuser-roles
のカラムrole-nameを上記で設定したex-manageに変更

これでしばらく様子をみることにします.
また何かいい解決策がありましたらご教示ください.
ありがとうございました.
1

スキルアップ/キャリアアップ(JOB@IT)