Tomcat服務(wù)器REALM配置參考_第1頁
Tomcat服務(wù)器REALM配置參考_第2頁
Tomcat服務(wù)器REALM配置參考_第3頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Tomcat服務(wù)器配置參考Realm組件概述Realm元素是一個(gè)包含用戶名,密碼和用戶角色的數(shù)據(jù)庫。角色與Unix的group 類似。Realm的不同實(shí)現(xiàn)允許將Catalina集成到認(rèn)證信息已經(jīng)被創(chuàng)建和維護(hù)的 環(huán)境中,然后利用這些信息來實(shí)現(xiàn)Container Managed Security,如Servlet Spec辻ication中所述。你可以在任何Catalina容器(Engine, Host或者Context)中嵌套Realm元素。 另外,Engine或者Host的Realm會(huì)自動(dòng)被低層次的容器繼承,除非被明確覆蓋。有關(guān)web應(yīng)用中container managed security的

2、更多信息,參考FIXME-應(yīng)用開 發(fā)者這一部分中"Container Managed Security指南”的連接;有關(guān)配置和使 用標(biāo)準(zhǔn)Realm實(shí)現(xiàn)的更多信息,參考FIXME-管理者這一部分中的"Realm Configuration HOW-TO"連接。以下的描述使用變量$CATALINA_HOME來指Tomcat 5安裝的口錄。大多數(shù)的相對 路徑都是以該U錄為基準(zhǔn)。但廷,通過設(shè)置CATALINA_BASE U錄,可以運(yùn)行多個(gè) Tomcat 5實(shí)例,這時(shí)你應(yīng)該使用$CATALINA_BASE來祚為U錄基準(zhǔn),而不是使用 $CATALINA_HOlEo屬性公共屬性

3、所有Realm的實(shí)現(xiàn)支持如下屬性:1屬性描述className實(shí)現(xiàn)的Java類名。這個(gè)類必須實(shí)現(xiàn)org. apache, catalina. Realm 接口。標(biāo)準(zhǔn)實(shí)現(xiàn)和大多數(shù)Catalina組件不一樣的是,Realm有兒個(gè)標(biāo)準(zhǔn)的實(shí)現(xiàn)。所以,必須使 用className屬性來選擇你希望使用的實(shí)現(xiàn)。JDBC Database Realm (org. apache, catalina. realm. JDBCRealm)JDBC Database Realm將Catalina連接到一個(gè)關(guān)系數(shù)據(jù)庫,通過正確的JDBC 驅(qū)動(dòng)訪問,用來查詢用戶名,密碼和他們相關(guān)的角色。山于查詢是在每次必要的 時(shí)候完成的

4、,因此數(shù)據(jù)庫的改變會(huì)馬上反映到用來認(rèn)證新登錄的信息中。除了用來獲取必需信息的數(shù)據(jù)庫表名和列名以外,還有很多附加的屬性用來配 置到數(shù)據(jù)庫的連接:屬性描述connectionName建立JDBC連接時(shí)使用的數(shù)據(jù)庫用戶名connectionPassword建立JDBC連接時(shí)使用的數(shù)據(jù)庫密碼connectionURL建立數(shù)據(jù)庫連接時(shí)傳遞給JDBC驅(qū)動(dòng)的連接URLdigest用來對數(shù)據(jù)庫中的用戶密碼編碼的“消息摘要”算法 的名稱。如果沒有指定,密碼以明文方式存儲(chǔ)。driverName連接到認(rèn)證數(shù)據(jù)庫的JDBC驅(qū)動(dòng)的完整的Java類名roleNameCol"用戶角色"表中的列名,包含了

5、指定給對應(yīng)用戶的 角色名稱。userCredCol"用戶”表中的列名,包含用戶的可信數(shù)據(jù)(比如, 密碼)。如果設(shè)置了 digest屬性,則假定密碼已經(jīng)用 了指定的算法進(jìn)行編碼,否則,假定密碼是明文密碼。userNeimeCol“用戶”表和"用戶角色”表中的列名,包含用戶的 用戶名userRoleTable"用戶角色”表名,必須包含userNameCol和 roleNameCol指定的列。userTable用戶表,必須包含userNameCol和userCredCol屬性 指定的列有關(guān)使用 JDBC Database Realm 組件來設(shè)置 container ma

6、naged security 的更 多信息,參考 FIXME - Nested pointer into HOW-TODataSource Database Realm(org. apache, catalina. realnu DataSourceRealm)DataSource Database Realm將Catalina連接到一個(gè)關(guān)系數(shù)據(jù)庫,通過一個(gè)名 為JDBC Datasource的JNDI訪問,查詢用戶名,密碼以及他們對應(yīng)的角色。山 于查詢在每次需要的時(shí)候進(jìn)行,因此數(shù)據(jù)庫的變化會(huì)馬上反映到用來認(rèn)證新的 登錄的信息上。JDBC Realm使用單個(gè)數(shù)據(jù)庫連接。這要求基于:realm的

7、認(rèn)證之間同步,比如, 同一時(shí)刻只允許一個(gè)認(rèn)證。這對需要大量使用認(rèn)證的應(yīng)用程序來說是一個(gè)瓶頸。DataSource Database Realm支持并發(fā)的基于Realm的認(rèn)證,允許JDBC DataSource處理優(yōu)化問題,比如數(shù)據(jù)庫連接池。有很多選項(xiàng)可以配置JNDI JDBC Datasource的名字,同時(shí)包括用來獲取必要信 息的數(shù)據(jù)庫表名和列名。屬性描述dataSourceNameRealm 的 JNDI JDBC DataSource 的名字digest用來對存儲(chǔ)在數(shù)據(jù)庫中的用戶密碼編碼的消息摘要算法的 名稱。如果沒有指定,假定用戶密碼以明文方式存儲(chǔ)。roleNameCol“用戶角色“表

8、中的列名,包含了指定給對應(yīng)用戶的角色 名稱。userCredCol“用戶”表中的列名,包含了用戶的可信數(shù)據(jù)(比如,密 碼)。如果設(shè)置了 digest屬性,則假定密碼已經(jīng)用了指定 的算法進(jìn)行編碼,否則,假定密碼是明文密碼。userNameCol“用戶”表和“用戶角色”表中的列名,包含用戶的用戶 名。userRoleTable用戶角色表名,必須包含userNameCol和roleNameCol指 定的列。userTable用戶表,必須包含userNameCol和userCredCol屬性指定 的列。有關(guān)使用 DataSource Database Realm 組件配置 container mana

9、ged security 的更多信息,參考 DataSource Realm HOW-TOJNDI Directory Realm (org. apache, catalina. realm< JNDIRealm)JNDI Directory Realm 將 Catalina 連接到一個(gè) LDAP LI 錄,通過正確的 JNDI 驅(qū)動(dòng)訪問。LDAP U錄存儲(chǔ)了用戶名,密碼以及他們相應(yīng)的角色。對LI錄的修改 馬上反映到用來認(rèn)證新的登錄的數(shù)據(jù)上面。directory realm支持許多使用LDAP進(jìn)行認(rèn)證的方法:realm可以使用模式來決定用戶目錄條目的唯一名字(distinguished

10、name),或者搜索目錄來定位該條H ;-realm可以將用戶條的唯一名字和用戶給出的密碼綁定到錄上,對用戶進(jìn)行認(rèn)證;或者,從用戶條口中取出密碼,在本地進(jìn) 行比較;在口錄中,角色可以以單獨(dú)的條存在(比如,用戶所屬的組條H ),或者,角色可以是用戶條U的一個(gè)屬性,或者兩種情況都是;除了到LI錄的連接,用戶從目錄中獲取信息的元素和屬性名稱以外,Directory Realm還支持很多其他的附加屬性:屬性描述authentication使用的認(rèn)證類型,字符串類型??梢允恰皀one”, “simple”,“strong”或者提供者定義的其他類型, 如果沒有值,使用提供者提供的缺省值。connectio

11、nName創(chuàng)建H錄連接使用的目錄用戶名。如果沒有指定,使 用匿名連接,這在大多數(shù)悄況下就足夠了,除非你指 定(userPassword 屬性connectionPassword創(chuàng)建U錄連接使用的U錄密碼。如果沒有指定,使用 匿名連接,這在大多數(shù)情況下就足夠了,除非你指定 userPassword 屬性。connectionURL創(chuàng)建目錄連接時(shí),傳遞給JNDI驅(qū)動(dòng)的連接URL。contextFactory用來取得JNDI Initialcontext的工廠類的Java類名。 缺省情況下,假定使用標(biāo)準(zhǔn)的JNDI LDAP提供者。protocol使用的安全協(xié)議。如果沒有指定,使用提供者提供的 缺省值

12、。roleBase用于角色查找的基準(zhǔn)口錄條LI。如果沒有指定,使用 目錄上下文的頂級元素。roleName在角色查找中,包含角色名的屬性的名稱。另外,在 用戶條LI中,你可以使用userRoleName來指定包含額 外角色名的屬性名稱,。如果沒有指定,不搜索角色, 角色存在于用戶條目中。roleSearch用來進(jìn)行角色查找的LDAP過濾器表達(dá)式。使用0來 代替用戶的唯一名稱,1來代替用戶名。如果沒有指 定,不對角色進(jìn)行搜索,角色從用戶條目中由 userRoleName指定的屬性得到。roleSubtree在查找與用戶相關(guān)聯(lián)的角色時(shí),如果想搜索由 roleBase屬性指定的兀素的整個(gè)子樹,設(shè)為t

13、rue。缺 省值為false,只對頂級元素進(jìn)行搜索。userBase在使用userSearch表達(dá)式搜索用戶的時(shí)候的基準(zhǔn)元 素。如果使用userPattern表達(dá)式進(jìn)行搜索,不使用 這個(gè)屬性。userPassword在用戶條目中包含用戶密碼的屬性名。如果指定了這 個(gè)值,J?<DIRealm 使用 connectionName 和 connectionPassword屬性指定的值綁定到LI錄,取出 對應(yīng)的屬性,與被認(rèn)證的用戶給出的值進(jìn)行比較。如 果不指定這個(gè)值,JNDIRealm會(huì)嘗試使用用戶條U的唯 一名稱和用戶給出的密碼綁定到LI錄,如果綁定成功, 說明認(rèn)證成功。userPattern

14、用戶目錄條目的唯一名稱的模式,0代表實(shí)際的用戶 名。在唯一名稱包含用戶名,其他的項(xiàng)都相同的時(shí)候, 可以使用這個(gè)屬性,而不是使用userSearch, userSubtree 和 userBase.userRoleName用戶日錄條目中的一個(gè)屬性名,該屬性包含了零個(gè)或 多個(gè)指定給用戶的角色名的值。另外,如果角色以單 獨(dú)的條U存在,可以使用roleName屬性來指定屬性名, 在搜索目錄的時(shí)候,可以得到這個(gè)屬性。如果不指定userRoleName,用戶的所有角色通過角色 搜索得到;userSearch搜索用戶目錄條目時(shí),使用的LDAP過濾表達(dá)式,0 代表實(shí)際的用戶名,可以使用userSearch,

15、userBase 和userSubtree屬性一起來代替userPattern搜索U 錄。userSubtree如果希望搜索由userBase屬性指定的元素的整個(gè)子 樹,設(shè)為true,缺省值為false,即只搜索頂級元素。 如果使用userPattern表達(dá)式,不使用這個(gè)屬性。有關(guān)使用 JNDI Directory Realm 組件設(shè)置 container managed security 的更 多信息,參考 FIXME - Nested pointer into HOW-TOMemory Based Realm (org. apache, catalina. realm. MemoryRealm)Memory Based Realm是一個(gè)簡單的Realm實(shí)現(xiàn),它從XML文件中讀取用戶信息, 將這些信息標(biāo)識為內(nèi)存中的一系列Java對象的集合。這個(gè)實(shí)現(xiàn)只是用來啟動(dòng) container managed security,而不是用在產(chǎn)品中。所以,半數(shù)據(jù)文件改變的 時(shí)候,沒有機(jī)制來更新內(nèi)存中用戶的集合。Memory Based Realm實(shí)現(xiàn)支持如下的附加屬性:屬性描述pathname包含用戶信息的XML文件的絕對或者相對路徑。XML文件的格式 在下面定義。如果沒有指定這個(gè)屬性,缺省值為 conf/tomcat-users, xmlill pathname屬

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論