請遵循下列指示,以設定並執行具有 EGL LDAP 存取權的 J2EE 安全範例。若要設定範例,您可以匯入資料、配置 J2EE 安全及執行範例。
開始之前
若要使用具有 EGL LDAP 存取權的 J2EE 安全範例,您必須使用符合 LDAP 標準的伺服器。如果您沒有符合 LDAP 標準的伺服器,則可以使用開放程式碼伺服器(例如 ApacheDS)及用戶端(例如 Apache Directory Studio),提供對該伺服器的存取權。如需詳細資料,請參閱配置符合 LDAP 的軟體
關於這項作業
這些設定指示是 ApacheDS 和 Apache Directory Studio 特定的。如果您使用不同的符合 LDAP 標準的伺服器,則您的配置可能視伺服器而有所不同。
程序
- 匯入資料:
- 若要將專案範例匯入到您的工作區中,請在 具有 EGL LDAP 存取權的 J2EE 安全頁面上,按一下取得範例。容許工作區移轉工具執行任何必要的移轉。
- 在專案範例中,開啟下列每一個檔案,並確保內容適合您的伺服器:
- 將範例資料從專案中的 SampleCompany.ldif 檔案匯入至目錄伺服器。
- 配置 J2EE 安全。 如需設定 Web 型儲存器管理之 J2EE 安全的相關一般資訊,請參閱「使用 J2EE 儲存器管理的安全」。
- 設定 J2EE 安全的 WebSphere Application Server:
- 建立 WebSphere Application Server 的實例(例如,8.0 版),並啟動伺服器。
- 用滑鼠右鍵按一下伺服器,並選取。
- 於主要管理主控台,展開,然後按一下確保管理、應用程式及基礎架構的安全。
- 選取啟用管理安全及啟用應用程式安全,而清除使用 Java 2 安全來限制應用程式對本端資源的存取權。
- 在可用的領域定義區段中,選取獨立式 LDAP 登錄。按一下設為現行值。
- 存取「獨立式 LDAP 登錄」內容:
- 按一下配置。
- 在「獨立式 LDAP 登錄」內容視窗的「其他內容」標籤上,按一下進階輕量型目錄存取通訊協定 (LDAP) 使用者登錄設定。
- 對於「使用者」過濾器,輸入 (&(uid=%v)(objectclass=person)),然後按一下確定。
- 對於「主要」管理使用者名稱,鍵入 msmith。
- 選取自動產生的伺服器身分。
- 輸入 LDAP 連結準則,然後按一下確定及套用。如果您將開放程式碼 Apache 軟體用於示範目的,請使用表格中列出的準則。否則,請使用預設值。
表 1. LDAP 連結準則| 連結準則 |
值 |
| LDAP 伺服器的類型 |
自訂 |
| 主機 |
localhost |
| 埠 |
389 |
| 基本識別名稱 (DN) |
o=sample |
| 連結識別名稱 |
uid=msmith,ou=people,o=sample |
| 連結密碼 |
pass |
- 在位於視窗頂端的訊息框中,按一下直接儲存至主要配置。
重要: 因為您已啟用管理安全,所以必須利用使用者 ID msmith 及密碼 pass 登入 WebSphere Application Server。如果您不再需要管理安全,則在執行此範例之後,關閉管理安全。
- 結束管理主控台,並停止伺服器。
- 設定 WebSphere Application Server 的實例:
- 用滑鼠右鍵按一下伺服器,然後選取開啟。
- 指定自動連線設定,或者將伺服器連線類型從 RMI 變更為 SOAP。使用預設埠。
- 在「安全」下,選取在此伺服器上啟用安全。對於使用者 ID,輸入 msmith;對於密碼,輸入 pass。確保已選取在 SSL 信號交換期間自動信任伺服器憑證。
重要: 若要避免鑑別錯誤及不需要的迴圈,請確保使用者 ID 及密碼正好符合管理主控台中輸入的認證。
- 儲存您的變更。
- 下載具有 EGL LDAP 存取權的 J2EE 安全範例。
已為 J2EE 安全配置專案 SecureLDAPSample 的部署描述子 (
WebContent/WEB-INF/web.xml):
- 在安全標籤上,已新增 AllRole 安全角色。
- 已新增「Constraint1 安全限制」。限制指定此專案中由 J2EE 安全確保安全的資源,以及可以存取那些資源的角色。Constraint1 指定只有具有「所有角色」安全角色的人員可以存取此專案中在 WebContent ("/*") 下定義的 JSP 頁面或資源。
- 在頁面標籤上,「鑑別」方法設為 FORM;這指出使用表單型鑑別。「登入」頁面及「錯誤」頁面已在專案中定義,並指定以與表單型鑑別搭配使用。
已為 J2EE 安全配置 SecureLDAPSampleEAR 專案的
EarContent/META-INF/application.xml 部署描述子:
- 在安全標籤上,已新增「AllRole 安全角色」。
- 在「WebSphere 連結」下,已選取所有已鑑別的使用者以對映至 AllRole。因此,SampleCompany 目錄中的所有使用者 ID 都對映至 AllRole,且可以執行此 Web 應用程式。
如果您在執行管理安全時遇到問題,則可以透過於指令行(而非管理主控台)工作來停用它。若要停用管理安全,請如下所示執行動作:
- 於命令提示字元,鍵入下列指令:
WebSphere_home\bin\wsadmin.bat -conntype NONE
註: WebSphere_home 是 WebSphere Application Server 之安裝目錄的完整路徑名稱。
- 當再次顯示系統提示時,鍵入 securityoff。
- 當您完成時,鍵入 quit。
- 重新啟動應用程式伺服器。
- 執行範例:
- 清理 SecureLDAPSample 專案。
- 若要產生程式碼,請使用 SecureLDAPSampleWebBuildOptions 建置描述子,其位於 SecureLDAPSample.eglbld 中。
- 用滑鼠右鍵按一下 WebSphere Application Server 的實例。按一下新增並移除專案。
- 將 SecureLDAPSampleEAR 新增至伺服器,然後按一下完成。
- 啟動 WebSphere Application Server,以完成安全配置:
- 用滑鼠右鍵按一下伺服器,並選取。
- 延伸應用程式,然後按一下企業應用程式。即會顯示「企業應用程式」頁面。
- 按一下 SecureLDAPSampleEAR。即會顯示應用程式配置頁面。
- 在 Web 模組內容區段中,按一下階段作業管理。即會顯示「階段作業管理」頁面。
- 在「一般內容」區段中,按一下安全整合。
如果您在同一伺服器實例上再次執行範例,您不需要重複安全配置。
- 重新啟動 WebSphere Application Server。
- 在 SecureLDAPSample 的 WebContent 資料夾中,用滑鼠右鍵按一下 welcome.jsp。選取執行身分,然後選取在伺服器中執行。
- 在登入頁面上,透過鍵入使用者 ID ajones 及密碼 pass,來鑑別為「範例公司」客戶;然後按一下確定。即會開啟「歡迎使用範例公司」頁面。您可以為 ajones 顯示或更新資料。
- 按一下更新。
- 變更部分資料,然後按一下更新並顯示。變更會確定至目錄。新資料顯示在頁面上。
- 重新啟動伺服器及工作台。
- 在伺服器上,執行 welcome.jsp,並透過利用使用者 ID msmith 及密碼 pass,以「範例公司」員工身分登入。您可以顯示或更新資料。