?? websphere快速入門(22).txt
字號:
作者:easyinfonet
email: zhujs@cec.gov.cn
日期:2001-2-23 9:41:20
6.8 安全性
WebSphere應用服務器具有很好的安全性支持。安全性簡單地說就是確定誰可訪問重要的系統資源,這些系統資源包括文件、目錄、程序、連接和數據庫。以獨立模式運行WebSphere應用服務器比作為 Web 服務器的一部分運行具有更高的安全性。如果安全性要求超出了 Web 服務器提供的安全性,那么請以獨立模式運行WebSphere應用服務器。下面介紹使用存取控制表保護資源、選擇認證方案和協議、在WebSphere應用服務器中使用目錄服務。
1.使用存取控制表保護資源
建立了一個設置安全性的基本過程。
與安全性相關的概念包括用戶、組、資源、許可權、領域、和存取控制表(ACL),這些安全性概念是緊密相關的,現說明如下:
(1) 用戶:一個可被 Web 服務器認證的身份。用戶可以是人也可以是計算機。
(2) 組:用戶的集合。組提供了一個管理大量的用戶的有效方法,這是因為管理員可以一次指定一個組的許可權。通常,組成員之間有一些共同特征。例如,一個公司中可能包括一個由管理級雇員組成的組,和另一個由非管理級雇員組成的組。其中,可能對非管理級用戶賦予查看銷售數據文件的訪問權,而對管理級用戶賦予查看和編輯銷售數據文件的訪問權??梢詫⒁粋€人定義成單個用戶,同時也將其定義成組的成員。例如,個人 Amy 可能代表單個用戶 amy,也可能代表組 managers 的成員。
(3) 資源:通過 Web 服務器進行存取的有價資源包括HTML 文件和目錄(Web 頁面)、其它文件和目錄(如FTP文件)、Web 應用程序(Java Servlet 或 CGI 程序),而通過WebSphere應用服務器進行存取的資源包括Java Servlet、啟用訪問企業資源和應用程序(如數據庫)的定制 Servlet、連接、套接字、文件和其它可由 Servlet 使用的資源。
(4) 許可權:許可權表示請求訪問資源的特權。管理員可通過建立存取控制表向用戶和組授予許可權,以保護資源。許可權是與特定的資源相關的。想象一下,如果一個用戶具有查看文件 A 和修改文件 B 的許可權。那么該用戶不能用修改文件 B 的許可權來修改文件 A。每個許可權僅適用于特定的資源,且不能傳遞。單個用戶的許可權優先于組的許可權。例如,如果用戶 amy 對文件具有讀、寫權,但同時 amy 所屬的組對該文件僅有讀取權,那么 amy 仍對該文件具有讀、寫權,這是因為單個用戶的許可權將覆蓋具有更多限定的組許可權。(即使組的許可權限制性低于單個用戶的許可權,但用戶的許可權仍將覆蓋組的許可權)。
(5) 領域:領域是用戶、組和存取控制表的數據庫。為了使用戶能訪問領域中的資源,必須在該領域中定義需訪問資源的用戶。一個用戶可以屬于幾個領域,但在同一領域中用戶標識符不能重復。例如,用戶 amy 可屬于 fileRealm 和 anyRealm 領域。但每個領域中僅可包含一個名為 amy 的用戶??稍诿總€領域中賦予用戶 amy 訪問不同資源的不同許可權。
(6) 存取控制表:與資源關聯的存取控制表指定了領域中的哪些用戶和組可以訪問資源。
存取控制表(ACL)、領域和資源的關系如下:
l 一個領域可以包含許多 ACL。
l 一個領域可以包含許多資源。
l 一個 ACL 可以僅屬于一個領域。
l 一個資源可以僅屬于一個領域。
l 一個資源僅與一個 ACL 相關。
l 一個 ACL 可與許多資源相關。
WebSphere應用服務器附帶了一些前期建立的領域:
l defaultRealm 定義了用戶如何訪問本地定義的資源。也可建立存取控制表,以確定哪些用戶和組
對哪些資源具有訪問權。
l NT 領域(NTRealm)和UNIX領域(UnixRealm)定義了在操作系統中擁有帳戶的用戶如何使用
WebSphere應用服務器資源。 操作系統中定義的用戶可由WebSphere應用服務器共享。只要他們存在于下層系統中,這種共享就一直存在。WebSphere應用服務器管理器界面使您能查看該領域;但若要更改它,必須使用操作系統所提供的設施。目前,WebSphere應用服務器可以共享操作系統定義的用戶,但不能共享組。
l servletMgrRealm 定義了 Servlet 如何訪問遠程定義的資源,如遠程裝入的 Servlet。 servletACL 是
該領域中的唯一一張存取控制表。當遠程裝入且帶有數字簽名的 Servlet 試圖訪問一個受保護的資源時,將對 Servlet 中的數字證書與 servletMgrRealm 中與用戶關聯的數字證書進行比較。 servletACL 定義了是否授予或拒絕許可權。例如,假設用戶 X 的數字證書封裝在 anyServlet.JAR 文件中。如果用戶 X 被添加在 servletMgrRealm 中,則所有包含與該用戶相同數字證書的 Servlet (anyServlet.JAR 文件中)可以執行和訪問賦予該用戶的資源。
l 最后,如果在WebSphere應用服務器管理器的“目錄管理”頁面中啟用目錄服務,將顯示
LDAPRealm。WebSphere應用服務器可以共享定義在目錄服務中的用戶和組,且這種共享將一直持續下去,直至除去他們或禁用目錄管理支持。WebSphere應用服務器管理器界面使您能查看該領域;但若要對它進行更改,必須使用 LDAP 服務器所提供的設施。如需更多有關 LDAP、目錄服務和 LDAPRealm 的信息,請參閱有關使用目錄服務的文檔。
WebSphere應用服務器使您能設置各種許可權。例如,其中包括發送和接收文件、刪除文件、讀取和寫入文件、裝入 Servlet、鏈接至庫文件、打開和偵聽套接字等許可權。某些情況下,服務不需要其客戶存在于存取控制表中。例如,許多 Web 頁面(HTTP)服務向所有用戶公開其文檔,而不要求他們在存取控制表中進行注冊。
可通過為每個資源在單個領域中建立單個存取控制表(ACL)來保護該資源(下面將進行討論)。 ACL 將指定可以訪問或修改資源的用戶或組。對于要保護的每個資源,需要指定存取控制表、安全性領域、認證方案(用來驗證訪問資源的用戶的方法)。下面介紹實現安全性的一個示例。
使用各種管理器頁面,以用存取控制表來建立安全性的基本步驟顯示如下。
(1) 定義用戶。
使用“安全性”-> 使用“用戶”頁面來定義用戶,即定義被允許訪問資源的個人和計算機。例如,定義名為 bopeep 的用戶:
l 選擇 defaultRealm。
l 單擊頁面左上部的“添加”按鈕。
l 輸入用戶名 bopeep。
l 輸入口令 sheep。再一次輸入該口令以進行驗證。
l 單擊“確定”按鈕。
l 驗證 bopeep 顯示在“定義的用戶”列表中。
(2) 可選地定義組
使用“安全性”-> 使用“組”頁面來定義用戶所屬的組,以使管理更加容易。首先,選擇一個領域。下一步,選擇將組添加到該領域中。可以用您喜歡的名稱來命名組,然后將用戶從非成員狀態轉換為成員狀態。例如,將用戶 bopeep 添加到組 mypeeps 中:
l 選擇 defaultRealm。
l 單擊頁面左上部的“添加”按鈕。
l 輸入組名 mypeeps。
l 在“非成員”列表中選擇用戶 bopeep。
l 單擊“非成員”列表旁的“添加”按鈕。
l 驗證 bopeep 已轉換到成員框中。
(3) 創建 ACL
使用“安全性”-> 使用“存取控制表”頁面來創建 ACL。例如,創建名為 sheepcontrol 的 ACL:
l 單擊定義“定義的存取控制表”列表旁的“添加”按鈕。
l 輸入 ACL 名稱 sheepcontrol。
l 單擊“確定”按鈕。
(3) 定義資源
使用“安全性”-> 使用“資源”頁面以將要保護的資源添加到領域中。(注意:必須在執行“創建 ACL”步驟后才能執行該步驟,這是因為必須指定新資源所屬的 ACL)。例如,將 CheckMessage Servlet 添加到領域 defaultRealm 中的 sheepcontrol ACL 中:
l 選擇 defaultRealm。
l 單擊“添加”按鈕。
l 選擇基本方案作為認證方案。(“方案”選項將在下文中討論)。
l 選擇 sheepcontrol ACL。
l 選擇 Servlet,并指定 CheckMessage Servlet。
l 單擊“確定”按鈕。
l 驗證 CheckMessage 現已作為 ACL sheepcontrol 的資源列示出來。
(4) 賦予許可權
返回 ACL 并賦予用戶、組和計算機訪問 ACL 資源的許可權。例如,賦予 bopeep具有 GET 和 PUT 許可權,以使它可以訪問領域 defaultRealm 中sheepcontrol ACL的文件和文件夾:
l 確保已在“定義的存取控制表”列表框中選定 sheepcontrol。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -