新聞中心
在我的項(xiàng)目一開始的時(shí)候由于時(shí)間關(guān)系,沒能摸清楚如何實(shí)現(xiàn)用自己寫的模塊處理登錄,所以就采用了比較簡(jiǎn)單RDBMS(即用JBoss的 DatabaseServerLoginModule)模塊處理登錄事件,然后通過一個(gè)過濾器判斷用戶是否已經(jīng)登錄,如果登錄了再從數(shù)據(jù)庫中讀取用戶信息到session中。雖然自己都感覺到有點(diǎn)不倫不類,但我還是將我的具體實(shí)現(xiàn)方式在下面寫出來:

專業(yè)從事成都做網(wǎng)站、網(wǎng)站建設(shè),高端網(wǎng)站制作設(shè)計(jì),小程序定制開發(fā),網(wǎng)站推廣的成都做網(wǎng)站的公司。優(yōu)秀技術(shù)團(tuán)隊(duì)竭力真誠(chéng)服務(wù),采用HTML5+CSS3前端渲染技術(shù),響應(yīng)式網(wǎng)站設(shè)計(jì),讓網(wǎng)站在手機(jī)、平板、PC、微信下都能呈現(xiàn)。建站過程建立專項(xiàng)小組,與您實(shí)時(shí)在線互動(dòng),隨時(shí)提供解決方案,暢聊想法和感受。
1.配置login-config.xml
編輯JBoss主目錄下的 server/default/conf 目錄下的login-config.xml文件,在
- ….
-
name = "nccnm"> -
-
code = "org.jboss.security.auth.spi. DatabaseServerLoginModule" flag = "required"> -
name = "dsJndiName">java:/ testds -
name = "principalsQuery">SELECT PASSWORD FROM OPERATOR WHERE LOGINID=? -
name = "rolesQuery">SELECT ROLENAME,'Roles' FROM V_ROLE WHERE LOGINID=? -
name="hashAlgorithm">MD5 -
name="hashEncoding">base64 - ….
在這里順便簡(jiǎn)單介紹一下MD5和Base64。MD5是一種不可逆的編碼算法,即你不可能由已經(jīng)加密的密碼字符串來根據(jù)固定的算法還原出原來的密碼,據(jù)說現(xiàn)在的銀行系統(tǒng)大多數(shù)采用這種方式來儲(chǔ)存用戶密碼,所以如果用戶的密碼遺失了,銀行也不可能通過查數(shù)據(jù)庫給你找回你原來設(shè)的密碼,只能重新設(shè)置。要破解MD5的密碼只能用很笨很好時(shí)的窮舉法。
而Base64的編碼其實(shí)大家都應(yīng)該經(jīng)常接觸,我們的電子郵件一般都是經(jīng)過Base64編碼后傳送的,如果您用的是Outlook Express收發(fā)郵件,那你可以通過郵件的“屬性/詳細(xì)信息/郵件來源”看到郵件的Base64編碼的信息。它將二進(jìn)制數(shù)據(jù)編碼為字母和數(shù)字,因?yàn)樽帜负蛿?shù)字的個(gè)數(shù)少于256,所以它是把3個(gè)字節(jié)的二進(jìn)制數(shù)據(jù)轉(zhuǎn)換為4個(gè)字節(jié)的字母和數(shù)字。所以經(jīng)過base64編碼的文件會(huì)比原來的文件大4/3倍。JBoss用專門的API來處理md5加密及base64的編碼和反編碼。
2.配置連接池
上面的文件中用到了一個(gè)名為testds的連接池,現(xiàn)在就來配置這個(gè)連接池。我這里用的是oracle數(shù)據(jù)庫,其它的數(shù)據(jù)庫的配置方式就不一一介紹了。具體的表結(jié)構(gòu)和建表的sql語句我這里也不再描述了,如果有不清楚的地方清留言問我。
編輯JBoss主目錄下的server\default \deploy目錄 (什么?你的目錄下沒有找到這個(gè)文件,沒關(guān)系,從你的JBoss主目錄的docs\examples\jca下copy一個(gè)過來)。在
-
testds -
jdbc:oracle:thin:@127.0.0.1:1521:mydb -
oracle.jdbc.driver.OracleDriver -
test -
123 -
org.jboss.resource.adapter. jdbc.vendor.OracleExceptionSorter -
-
Oracle9i
3.配置JBoss-web.xml
配置JBoss就完成了,下面再配置我們的項(xiàng)目里的文件。
打開你的Web應(yīng)用下的Web目錄下的的WEB-INF目錄,新建一個(gè)JBoss-web.xml的文件,在文件中加入如下內(nèi)容:
-
java:/jaas/ nccnm
這個(gè)配置Jboss會(huì)告訴我們這個(gè)應(yīng)用的JAAS安全性策略到哪里去找。
4.配置web.xml
打開你的Web應(yīng)用下的Web目錄下的的WEB-INF目錄,編輯web.xml (這個(gè)文件應(yīng)該能找到吧?如果找不到就麻煩了,從頭去啃J2EE),加入如下的內(nèi)容:
-
-
login required -
*.jsp -
*.htm -
*.html -
*.do -
-
role1 -
-
FORM -
mydomain -
/login.jsp -
/error.jsp -
-
role1
以上內(nèi)容的是配置JBoss,作用是本W(wǎng)eb應(yīng)用下的所有 jsp,htm,html,do為擴(kuò)展名的資源都要登錄后才能訪問(你可以根據(jù)你的需要來設(shè)置,通常你可以設(shè)置
【編輯推薦】
- JBoss企業(yè)中間件概述
- 配置JBoss4.0上MySQL數(shù)據(jù)庫
- JBoss配置mysql數(shù)據(jù)庫連接池
- Red Hat宣布JBoss開放選擇應(yīng)用平臺(tái)戰(zhàn)略
- 在JBoss4.0上完成Oracle數(shù)據(jù)庫配置
分享文章:配置JBoss如何從數(shù)據(jù)庫里讀取信息
文章URL:http://m.fisionsoft.com.cn/article/dhoghph.html


咨詢
建站咨詢
