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

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

標準 Realm 實現

JDBCRealm

JDBCRealm 是 Tomcat Realm 接口的一種實現,它通過 JDBC 驅動程序在關系型數據庫中查找用戶。只要數據庫結構符合下列要求,你可以通過大量的配置來靈活地修改現有的表與列名。

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

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

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

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

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

快速入門

為了設置 Tomcat 從而使用 JDBCRealm,需要執行以下步驟:

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

Realm 元素屬性

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

范例

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

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 的數據庫,它包含上述創建的表,通過用戶名“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 必須遵循以下規則:

  • 當用戶首次訪問一個受保護資源時,Tomcat 會調用這一 Realm 的 authenticate() 方法,從而使任何對數據庫的即時修改(新用戶、密碼或角色改變,等等)都能立即生效。
  • 一旦用戶認證成功,在登錄后,該用戶(及其相應角色)就將緩存在 Tomcat 中。(對于以表單形式的認證,這意味著直到會話超時或者無效才會過期;對于基本形式的驗證,意味著直到用戶關閉瀏覽器才會過期。)在會話序列化期間不會保存或重置緩存的用戶。對已認證用戶的數據庫信息進行的任何改動都不會生效,直到該用戶下次登錄。
  • 應用負責管理users(用戶表)和user roles(用戶角色表)中的信息。Tomcat 沒有提供任何內置功能來維護這兩種表。
全部教程
主站蜘蛛池模板: 免费看欧美日韩一区二区三区 | 欧美福利在线视频 | 精品自拍视频 | 精品国产第一国产综合精品 | 特级aav毛片日本免费视频 | 欧美三级欧美成人高清www | 中文一级毛片 | 在线观看欧美亚洲日本专区 | 欧美综合网 | 日韩中文字幕一区二区不卡 | 国产黄mmd在线观看免费 | 一区二区三区在线 | 日本 | 男人手机天堂 | 狠狠色伊人亚洲综合成人 | 久久一级片| 一级高清毛片免费a级高清毛片 | 国产一区二区三区日韩欧美 | 久久久久国产精品四虎 | 国产尤物福利视频一区二区 | jizzjizz中国护士第一次 | 男人的天堂免费视频 | 99在线观看免费 | 欧美一级在线观看 | 国产精品国产三级国快看 | 亚洲 欧美 自拍 卡通 综合 | 国产一区二区三区不卡观 | 国产精品伦理一区二区三区 | 精品特级一级毛片免费观看 | 亚洲精品中文字幕久久久久久 | 国产成人亚洲综合在线 | 老司机毛片 | 一级成人a免费视频 | 日本中文字幕在线观看 | 欧美人猛交日本人xxx | 九九热最新网址 | 男任天堂2021 | 奇米第一色| 97在线视频免费公开观看 | 欧美一区二区在线视频 | 欧美一级视频免费 | 天天干天天色综合网 |