• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    在Weblogic環境下的servlet中實現應用級身份認證

    發布: 2007-6-22 07:38 | 作者:   | 來源:   | 查看: 16次 | 進入軟件測試論壇討論

    領測軟件測試網

       
      在weblogic中利用應用服務器本身的配置,可以比較全面的實現用戶認證。由于我們主要是面向開發,這里主要講解在servlet中使用用戶角色規則(也就是我們常說的http用戶認證,下面還是使用這個我們熟悉的名詞吧)。
      
      Weblogic用戶認證的三種方式

      
      在weblogic應用服務器中,系統提供了三種不同的用戶認證方式:
      
      1、BASIC
      
      基本的身份認證方式,使用WEB瀏覽器彈出一個要求輸入用戶名和密碼的對話框。這個用戶名和密碼將在網站的某個(些)內容模塊中被強制要求。
      
      2、FORM
      
      基于FORM的用戶認證要求你返回一個包括用戶名和密碼的HTML表單,這個表單相對應與用戶名和密碼的元素必須是j_username和j_password,并且表單的action描述必須為j_security_check。下面是一個表單的例子:
      <form method="POST" action="j_security_chack">
      <input type="text" name="j_username">
      <input type="password" name="j_password">
      </form>
      
      包括這個表單的資源可以是一個HTML頁面、一個JSP頁面或者一個servlet。你可以在<form-login-page>元素中定義。當這個認證頁面被提交的時候,將創建一個HTTP session。所以,當認證成功后,使用session.isNew()方法將獲得一個FALSE的返回。
      
      3、CLIENT-CERT
      
      就是使用客戶數字證書來認證請求,一般都和SSL相聯系。如果需要使用請參考有關SSL相關內容。
      
      使用何種認證方法,可以在web.xml里的<login-config>元素中的子元素<auth-method>里定義?赡艿倪x擇的值為BASIC或FORM或CLIENT-CERT三者之一。
      
      在servlet中使用用戶認證
      
      要在servlet中使用用戶認證,必須先對web application進行相應的配置。
      
      1、修改weblogic.xml文件中的相關條目:
      <security-role-assignment>
      <role-name>mgr</role-name>
      <principal-name>al</principal-name>
      <principal-name>george</principal-name>
      <principal-name>ralph</principal-name>
      </security-role-ref>
      
      注:<role-name>是角色名,例如現在這是管理員,然后<principal-name>元素中指定角色所包括的所有用戶名。
      
      2、在web.xml的<security-role>元素中定義要使用的角色名mgr(在<role-name>元素中),并在<servlet>注冊項中為mgr角色做一個鏈接(manager)
      <servlet>
      ...
      <role-name>manager</role-name>
      <role-link>mgr</role-link>
      ...
      </servlet>
      <security-role>
      <role-name>mgr</role-name>
      </security-role>
      到這里服務器上的配置文件就完成了所需要的修改。
      
      3、在servlet中引用服務器的角色認證,只需要在合適的地方加入下一語句即可。
      
      isUserInRole("manager");
      
      值得注意的是,當用戶認證順利返回后,一個session將被建立。而在weblogic中,缺省的情況下各個web appliction都使用相同的cookie名(JSESSIONID),所以當任何一個認證成功以后,所有的Web Application都將使用這個相同的cookie名來保存有關認證的信息,從而實現“全站通”概念。假如你想對某個Web Application使用一個單獨的認證,你可以為這個應用單獨定義一個cookie名,這可以通過對weblogic.xml里的<session-descriptor>元素有關內容進行相應修改。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>