<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    weidagang2046的專欄

    物格而后知致
    隨筆 - 8, 文章 - 409, 評論 - 101, 引用 - 0
    數(shù)據(jù)加載中……

    為tomcat頁面設(shè)置訪問權(quán)限(j_security_check)

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

    對于較小型的web應(yīng)用,可以通過tomcat內(nèi)置的訪問控制機制來實現(xiàn)權(quán)限控制。采用這種機制的好處是,程序中無需進行權(quán)限控制,完全通過對tomcat的配置即可完成訪問控制。

    為了在tomcat頁面設(shè)置訪問權(quán)限控制,在項目的WEB-INFO/web.xml文件中,進行如下設(shè)置:

    <web-app>

    <!--servlet等其他配置-->

    <security-constraint>
      <web-resource-collection>
          <display-name>Example Security Constraint</display-name>
          <web-resource-name>My Test</web-resource-name>
      
          <url-pattern>/ddly/admin/*</url-pattern>
      </web-resource-collection>
     
    <auth-constraint>
        <role-name>role1</role-name>
        <role-name>tomcat</role-name>
    </auth-constraint>

    </security-constraint>

    <login-config>
        <auth-method>BASIC</auth-method>
        <realm-name>My Test</realm-name>
    </login-config>

    </web-app>

    其中,<url-pattern>中指定受限的url,可以使用通配符*,通常對整個目錄進行訪問權(quán)限控制。
    <auth-constraint>
    中指定哪些角色可以訪問<url-pattern>指定的url,在<role-name>中可以設(shè)置一個或多個角色名。

    使用的角色名來自tomcat的配置文件${CATALINA_HOME}/conf/tomcat-users.xml

    <login-config>中設(shè)置登錄方式,<auth-method>的取值為BASICFORM。如果為BASIC,瀏覽器在需要登錄時彈出一個登錄窗口。如果為FORM方式,需要指定登錄頁面和登錄失敗時的提示信息顯示頁面。

    使用FORM方式的配置樣例如下:

    <login-config>
       <auth-method>FORM</auth-method>
       <realm-name>Example Form-Based Authentication Area</realm-name>
       <form-login-config>
          <form-login-page>/login.jsp</form-login-page>
          <form-error-page>/error.jsp</form-error-page>
       </form-login-config>
    </login-config>

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

    <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>

    posted on 2005-07-28 12:42 weidagang2046 閱讀(5014) 評論(1)  編輯  收藏 所屬分類: Java

    評論

    # re: 為tomcat頁面設(shè)置訪問權(quán)限(j_security_check)   回復(fù)  更多評論   

    注意這里的url-pattern <url-pattern>/ddly/admin/*</url-pattern>其實是以本web app為根的相對路徑。
    2005-09-03 20:45 | weidagang2046

    # re: 為tomcat頁面設(shè)置訪問權(quán)限(j_security_check)   回復(fù)  更多評論   

    自己測試了一下,下面是我的web.xml配置文件:

    <?xml version="1.0" encoding="ISO-8859-1"?>

    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

    <security-constraint>
    <web-resource-collection>
    <display-name>Example Security Constraint</display-name>
    <web-resource-name>welcome_info</web-resource-name>
    <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
    <role-name>role1</role-name>
    <role-name>tomcat</role-name>
    </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>welcome_info</realm-name>
    </login-config>
    </web-app>

    2005-09-03 20:47 | weidagang2046
    主站蜘蛛池模板: 久久精品国产亚洲香蕉| 国产一区二区三区在线观看免费 | 国产偷国产偷亚洲高清人| 久久久免费的精品| 亚洲va久久久噜噜噜久久天堂| 久久久久久久国产免费看| 亚洲裸男gv网站| 色偷偷噜噜噜亚洲男人| 青青久在线视频免费观看| 亚洲女人初试黑人巨高清| 3344永久在线观看视频免费首页| 666精品国产精品亚洲| 少妇太爽了在线观看免费视频| 亚洲精品在线观看视频| 日韩精品福利片午夜免费观着| 色在线亚洲视频www| 一级做a爰全过程免费视频| 久久91亚洲人成电影网站| 日本免费电影一区二区| 亚洲视频在线观看地址| 在线观看的免费网站| 深夜A级毛片视频免费| 亚洲一区二区三区无码中文字幕| 免费毛片在线看不用播放器 | 亚洲日韩中文字幕| 免费观看成人毛片a片2008| 亚洲精品无码高潮喷水A片软| 波多野结衣免费视频观看| 国产精品免费看久久久香蕉| 亚洲电影一区二区| 免费的一级片网站| 日韩精品无码免费专区午夜不卡| 亚洲欧洲精品一区二区三区| 日韩免费一区二区三区| baoyu777永久免费视频 | 亚洲av成本人无码网站| 国产偷国产偷亚洲清高动态图 | 一级成人a做片免费| 亚洲美女色在线欧洲美女| mm1313亚洲精品国产| 50岁老女人的毛片免费观看|