日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

tomcat安全机制j_security_check(简单版)

發布時間:2023/12/15 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 tomcat安全机制j_security_check(简单版) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

參考: http://www.blogjava.net/asktalk/archive/2005/07/23/8221.html

在web應用中,對頁面的訪問控制通常通過程序來控制,流程為:
登錄 → 設置session → 訪問受限頁面時檢查session是否存在,如果不存在,禁止訪問

對于較小型的web應用,可以通過tomcat內置的訪問控制機制來實現權限控制。采用這種機制的好處是,程序中無需進行權限控制,完全通過對tomcat的配置即可完成訪問控制。

實現:在用戶訪問受限頁面時,如果用戶沒有登陸則自動跳轉到登陸頁面,只有通過登陸驗證有權限的用戶可以訪問受限資源。

下面講如何配置使用:

1.為了在tomcat頁面設置訪問權限控制,在項目的WEB-INF/web.xml文件中,進行如下設置:

<security-constraint><!--1.被保護的資源 --><web-resource-collection><web-resource-name>testLogin</web-resource-name><url-pattern>/protected/*</url-pattern></web-resource-collection><!--2.有權限的角色 --><auth-constraint><role-name>tian</role-name></auth-constraint></security-constraint><!-- 3.登錄方式 --><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>

其中,<url-pattern>中指定受保護的url,可以使用通配符*,通常對整個目錄進行訪問權限控制。(例子中指在protected目錄下的所有文件都被保護);
<auth-constraint>中指定哪些角色可以訪問<url-pattern>指定的url,在<role-name>中可以設置一個或多個角色名。(例子中角色名為tian的角色有訪問權限)。

?

2.使用的角色名來自tomcat的配置文件${CATALINA_HOME}/conf/tomcat-users.xml。 如下所示:

<tomcat-users><role rolename="tomcat"/><role rolename="tian"/><role rolename="manager"/><user name="admin" password="admin" roles="tian,tomcat,manager" /><user name="tian" password="tian" roles="tian,manager" /></tomcat-users>

其中,<role rolename="tian"/>指角色名為tian;

<user name="admin" password="admin" roles="tian,tomcat,manager" />指通過登錄名admin和密碼admin登陸的用戶擁有tian,tomcat,manager這3個角色的權限。

所用角色名也可以自己配置,使用Realm,可以從數據庫中獲取,下篇《在tomcat中使用Realm》再講。

?

3.<login-config>用來設置登錄方式;

<auth-method>的取值為BASIC與FORM。如果為BASIC,瀏覽器在需要登錄時彈出一個登錄窗口。如果為FORM方式,需要指定登錄頁面和登錄失敗時的提示信息顯示頁面。(例子中使用的登陸方式為FROM表單登陸)

其中的<form-login-page>指定登錄頁面url,<form-error-page>指定登錄失敗時的提示頁面url。
登錄頁面中,form的action,以及其中的用戶名和密碼兩個參數的名稱,都應取固定的值。登錄的后臺處理程序為j_security_check;用戶名和密碼的參數名稱分別為:j_usernamej_password
如下是登錄頁面(如:login.jsp)的一段示例代碼:

<form method="post" action='j_security_check' ><label >賬號:</label><input name="j_username" type="text"/><br><br><label >密碼:</label><input name="j_password" type="password"/><br><br><button id="j_login" type="submit" >登錄</button><br></form>

而BASIC的配置如下:

<login-config> <auth-method>BASIC</auth-method> </login-config>

?

轉載于:https://my.oschina.net/u/2351298/blog/783967

總結

以上是生活随笔為你收集整理的tomcat安全机制j_security_check(简单版)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。