您可以透過編輯配置,利用 Liberty 設定檔的自訂登入模組來配置 JAAS 配置 (system.WEB_INBOUND)。
除非您想要自訂 JAAS,否則您不需要配置 JAAS。
開始之前
如需配置伺服器之基礎程序的說明,以及關於伺服器配置特定層面的詳細資訊,請參閱手動管理 Liberty 設定檔。
避免問題: 開發人員工具會利用 loginModuleRef 元素來建立 JAAS 登入模組參照。
您必須變更它,並使用 jaasLoginContextEntry 元素的 loginModuleRef 屬性。
在 Liberty 設定檔上配置應用程式安全時,WASdev.net 網站上有一些安全配置範例可供參考。
程序
- 選取 JAAS 登入環境定義項目,按一下新增,然後輸入登入模組名稱。 這個範例在登入程序開頭新增自訂登入模組 myCustom。
需要系統提供的登入模組(hashtable、userNameAndPassword、certificate、token)。
- 選取 JAAS 登入模組:myCustom,輸入 ID 和類別名稱來配置您的自訂登入模組,然後按一下新增按鈕旁邊的箭頭,選取廣域元素,以輸入共用程式庫資訊。 在這個範例中,對應於自訂登入模組名稱的 ID 是 myCustom。
- 在蹦現畫面中,輸入共用程式庫的 ID,然後按一下確定。 在這個範例中,對應於共用程式庫名稱的 ID 是 customLoginLib。
- 配置共用程式庫的名稱和說明欄位,然後按一下新增按鈕旁邊的箭頭,選取子元素,以新增檔案集參照作為子元素。
- 配置檔案集。 按一下基本目錄欄位中的瀏覽,並選取 JAR 檔的所在目錄。然後,按一下併入型樣欄位中的瀏覽,選取包含自訂登入模組實作的 JAR 檔。 在這個範例中,自訂登入模組實作 JAR 檔是 CustomLoginModule.jar,位於 ${server.config.dir} 目錄之下。
- 選擇性的: 如果您的自訂登入模組需要任何選項,您可以用滑鼠右鍵按一下 JAAS 登入模組,選取新增,然後選取登入模組選項。
- 儲存配置。您可以尋找儲存在 server.xml 檔中的下列配置。
<jaasLoginContextEntry name="system.WEB_INBOUND" id="system.WEB_INBOUND">
<loginModuleRef>myCustom, hashtable, userNameAndPassword, certificate, token</loginModuleRef>
</jaasLoginContextEntry>
<jaasLoginModule className="com.sample.CustomLoginModule"
id="myCustom" libraryRef="customLoginLib">
</jaasLoginModule>
<library id="customLoginLib" name="customLoginLib"
description="Custom login module shared library">
<fileset dir="${server.config.dir}" includes="CustomLoginModule.jar"/>
</library>
- 必要:如果要使配置能夠運作,您必須變更 jaasLoginContextEntry 元素來包含 loginModuleRef 屬性。
您必須移除 loginModuleRef 元素,再將它新增為 jaasLoginContextEntry 元素的一個屬性。
以下是利用 loginModuleRef 屬性來配置的範例。
<jaasLoginContextEntry name="system.WEB_INBOUND" id="system.WEB_INBOUND"
loginModuleRef="myCustom, hashtable, userNameAndPassword, certificate, token" />
<jaasLoginModule className="com.sample.CustomLoginModule"
id="myCustom" libraryRef="customLoginLib">
</jaasLoginModule>
<library id="customLoginLib" name="customLoginLib"
description="Custom login module shared library">
<fileset dir="${server.config.dir}" includes="CustomLoginModule.jar"/>
</library>