您好,登錄后才能下訂單哦!
1. 下載MySQL JDBC驅動(mysql-connector-java-x.x.x-bin.jar)放到TOMCAT_HOME/lib目錄下。
2. 配置TOMCAT_HOME/server.xml,添加JDBCRealm,注釋掉原來的LockOutRealm。
<Realm className="org.apache.catalina.realm.JDBCRealm" driverName="org.gjt.mm.mysql.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/authority?user=root&password=123456" userTable="users" userNameCol="user_name" userCredCol="user_pass" userRoleTable="roles" roleNameCol="role_name"/> <!-- <Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm>-->
3. 連接數據庫,創建BAISC訪問用戶表和用戶角色表,并插入數據。
CREATE TABLE `users` ( `user_id` int(11) NOT NULL AUTO_INCREMENT, `user_name` varchar(50) NOT NULL, `user_pass` varchar(50) NOT NULL, `user_mark` varchar(255) DEFAULT '', PRIMARY KEY (`user_id`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; CREATE TABLE `roles` ( `role_id` int(11) NOT NULL AUTO_INCREMENT, `role_name` varchar(50) NOT NULL, `user_name` varchar(50) NOT NULL, PRIMARY KEY (`role_id`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; INSERT INTO 'authority'.'users'('user_id','user_name','user_pass','user_mark') VALUES (1, 'admin', 'password', ''); INSERT INTO 'authority'.'users'('user_id','user_name','user_pass','user_mark') VALUES (2, 'guest', 'password', ''); INSERT INTO 'authority'.'roles'('role_id','role_name','user_name') VALUES (1,'admin','admin'); INSERT INTO 'authority'.'roles'('role_id','role_name','user_name') VALUES (2,'guest','guest');
4. 在WEB Project的WEB-INF/web.xml的web-app節點下增加如下內容
<security-constraint> <web-resource-collection> <web-resource-name>Web Project Name</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>admin</role-name> </auth-constraint> </security-constraint> <login-config> <auth-method>BASIC</auth-method> <realm-name>favourite basic realm</realm-name> </login-config> <security-role> <role-name>admin</role-name> </security-role>
5. 啟動Tomcat,輸入應用的訪問地址,就會彈出用戶登錄的輸入框,輸入正確的用戶名和密碼后就可以訪問受保護的資源。
需要注意的是:只有首次訪問受保護的資源時才需要進行登錄,這是因為用戶登錄后相關的信息都放到Tomcat服務器的緩存中,除非用戶關閉瀏覽器或清除緩存,否則認證信息一直存在,用戶也就不需要再次進行登錄。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。