大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Tomca教程
Tomcat Manager
Tomcat Realm 配置
Tomcat 安全管理
Tomcat JNDI 資源
Tomcat JDBC 數(shù)據(jù)源
Tomcat 類加載機制
Tomcat JSPs
Tomcat SSL/TLS配置
Tomcat SSI
Tomcat CGI
Tomcat 代理支持
Tomcat MBean 描述符
Tomcat 默認 Servlet
Tomcat 集群
Tomcat 連接器
Tomcat監(jiān)控與管理
Tomcat 日志機制
Tomcat 基于 APR 的原生庫
Tomcat 虛擬主機
Tomcat 高級 IO 機制
Tomcat 附加組件
Tomcat 安全性注意事項
Tomcat Windows 服務(wù)
Tomcat Windows 認證
Tomcat 的 JDBC 連接池
Tomcat WebSocket 支持
Tomcat 重寫機制

標準 Realm 實現(xiàn)

JDBCRealm

JDBCRealm 是 Tomcat Realm 接口的一種實現(xiàn),它通過 JDBC 驅(qū)動程序在關(guān)系型數(shù)據(jù)庫中查找用戶。只要數(shù)據(jù)庫結(jié)構(gòu)符合下列要求,你可以通過大量的配置來靈活地修改現(xiàn)有的表與列名。

必須有一張用戶表(users table)。它包含著一個由 Realm 所能識別的所有合法用戶所構(gòu)成的行。

      用戶表必須至少包含兩列(當然,如果現(xiàn)有應(yīng)用確實需要,則同樣也可以包含更多的列):

      用戶名:當用戶登錄時,能被 Tomcat 識別的用戶名。

密碼:當用戶登錄時,能被 Tomcat 所識別的密碼。該列中的值可能是明文,也可能是摘要式密碼,稍后詳述。

  • 必須有一張用戶角色表(user roles table)。該表包含一個角色行,包含著可能指定給特定用戶的每個合法角色。一個用戶可以沒有角色,也可以有一個或多個角色,這都是合法的。
  • 用戶角色表 至少應(yīng)包含兩列(如果現(xiàn)有應(yīng)用確實需要,則也可以包含更多的列):
  • 用戶名。Tomcat 所能識別的用戶名(與用戶表中指定的值相同)。
  • 用戶所對應(yīng)的合法角色名。

快速入門

為了設(shè)置 Tomcat 從而使用 JDBCRealm,需要執(zhí)行以下步驟:

  1. 在數(shù)據(jù)庫中創(chuàng)建符合上述規(guī)范的表與列。
  2. 配置一個 Tomcat 使用的數(shù)據(jù)庫用戶名與密碼,并且至少有只讀權(quán)限(Tomcat 永遠都不會去修改那些表中的數(shù)據(jù))。
  3. 將用到的 JDBC 驅(qū)動程序復(fù)制到 $CATALINA_HOME/lib 目錄中。注意只能識別 JAR 文件!
  4.  $CATALINA_BASE/conf/server.xml 目錄中設(shè)置一個  元素。這一點下文將會詳細敘述。
  5. 如果 Tomcat 處于運行狀態(tài),則重啟它。

Realm 元素屬性

如上所述,為了配置 JDBCRealm,需要創(chuàng)建一個 Realm 元素,并把它放在 $CATALINA_BASE/conf/server.xml 文件中。JDBCRealm 的屬性都定義在 Realm 配置文檔中。

范例

下面這個 SQL 腳本范例創(chuàng)建了我們所需的表(根據(jù)你所用的數(shù)據(jù)庫,可以相應(yīng)修改其中的語法)。

create table users (
  user_name         varchar(15) not null primary key,
  user_pass         varchar(15) not null
);
create table user_roles (
  user_name         varchar(15) not null,
  role_name         varchar(15) not null,
  primary key (user_name, role_name)
);

Realm 元素包含在默認的 $CATALINA_BASE/conf/server.xml 文件中(被注釋掉了)。在下面的范例中,有一個名為 authority 的數(shù)據(jù)庫,它包含上述創(chuàng)建的表,通過用戶名“dbuser”和密碼“dbpass”進行訪問。

<Realm className="org.apache.catalina.realm.DataSourceRealm"
   dataSourceName="jdbc/authority"
   userTable="users" userNameCol="user_name" userCredCol="user_pass"
   userRoleTable="user_roles" roleNameCol="role_name"/>
<Realm className="org.apache.catalina.realm.DataSourceRealm"
   dataSourceName="jdbc/authority"
   userTable="users" userNameCol="user_name" userCredCol="user_pass"
   userRoleTable="user_roles" roleNameCol="role_name"/>

特別注意事項

JDBCRealm 必須遵循以下規(guī)則:

  • 當用戶首次訪問一個受保護資源時,Tomcat 會調(diào)用這一 Realm 的 authenticate() 方法,從而使任何對數(shù)據(jù)庫的即時修改(新用戶、密碼或角色改變,等等)都能立即生效。
  • 一旦用戶認證成功,在登錄后,該用戶(及其相應(yīng)角色)就將緩存在 Tomcat 中。(對于以表單形式的認證,這意味著直到會話超時或者無效才會過期;對于基本形式的驗證,意味著直到用戶關(guān)閉瀏覽器才會過期。)在會話序列化期間不會保存或重置緩存的用戶。對已認證用戶的數(shù)據(jù)庫信息進行的任何改動都不會生效,直到該用戶下次登錄。
  • 應(yīng)用負責管理users(用戶表)和user roles(用戶角色表)中的信息。Tomcat 沒有提供任何內(nèi)置功能來維護這兩種表。
全部教程
主站蜘蛛池模板: h片在线播放免费高清 | 天天舔天天操天天干 | 中文字幕日本一区久久 | 在线观看久久 | 久久网站免费观看 | 国产精品视频一区二区三区不卡 | 久久久国产精品免费 | 12至16末成年毛片 | 四虎成年永久免费网站 | 色一情一乱一伦麻豆 | 久久久久在线视频 | 亚洲国产成人精品区 | 久青草国产观看在线视频 | 中文字幕免费视频精品一 | 久久婷婷成人综合色 | 国产在线观看一区二区三区四区 | 女人18毛片特级一级免费视频 | 香蕉视频免费在线观看 | 爱操综合网 | 伊人99在线 | 国产精品麻豆一区二区 | 思99热精品久久只有精品 | 精品亚洲欧美高清不卡高清 | 欧美日韩国产三级 | 亚洲精品色综合久久 | 国农村精品国产自线拍 | 精品久久国产视频 | 非洲黑人xxxxxbbbbbb | 美女福利视频一区二区 | 99re热在线观看 | 综合在线亚洲 | 国产一区二区不卡 | 99热成人精品热久久669 | 美女视频黄的全i免费 | 麻豆精品国产免费观看 | 一级成人黄色片 | chinese国产xxxx中国 | 国产精品福利视频手机免费观看 | 中国一级特黄大片毛片 | 久久77777| 天天射天天射 |