Application Security 2.0
這項特性支援設定伺服器執行時期環境與應用程式的安全;它包含基本使用者登錄。這項特性取代 appSecurity-1.0,不包含 Servlet-3.0 或支援 LDAP 使用者登錄。如果要維護 Web 應用程式的安全,請新增 servlet-3.0 特性。如果要設定 EJB 應用程式的安全,請新增 ejbLite-3.1 特性。如果要使用 LDAP,請新增 ldapRegistry-3.0 特性。將 appSecurity-2.0 特性新增至伺服器之後,您需要配置使用者登錄,例如:基本使用者登錄或 LDAP 使用者登錄。
啟用這項特性
如果要啟用「應用程式安全 2.0」特性,請在 server.xml 檔的 featureManager 元素內,新增下列的元素宣告:
<feature>appSecurity-2.0</feature>
支援的 Java™ 版本
- JavaSE-1.6
- JavaSE-1.7
- JavaSE-1.8
開發相依於這項特性的特性
如果您要開發的特性相依於「應用程式安全 2.0」特性,請將下列項目包含在您新特性的特性資訊清單檔 Subsystem-Content 標頭中:
com.ibm.websphere.appserver.appSecurity-2.0; type="osgi.subsystem.feature"
這項特性啟用的特性
啟用這項特性的特性
特性配置元素
您可以在 server.xml 檔中使用下列元素,來配置「應用程式安全 2.0」特性:
- administrator-role
- authCache
- authentication
- basicRegistry
- classloading
- jaasLoginContextEntry
- jaasLoginModule
- library
- ltpa
- quickStartSecurity
- administrator-role
- 獲指派伺服器管理者角色的使用者及/或群組集合。
- authCache
- 控制鑑別快取作業。
屬性名稱 資料類型 預設值 說明 allowBasicAuthLookup boolean true 容許依使用者 ID 和雜湊式密碼查閱。 initialSize int 下限:1
50 鑑別快取所支援的項目起始數目。 maxSize int 下限:1
25000 鑑別快取所支援的項目數目上限。 timeout 精準度是毫秒的時間量 600s 在移除快取中的項目之前的時間量。. 指定正整數加上時間單位,時間單位可以是小時 (h)、分鐘 (m)、秒 (s) 或毫秒 (ms)。例如,指定 500 毫秒為 500ms。您可以在單一項目中包括多個值。例如,1s500ms 相等於 1.5 秒。 - authentication
- 控制內建鑑別服務配置。
屬性名稱 資料類型 預設值 說明 allowHashtableLoginWithIdOnly boolean false 容許在雜湊表內容中僅具有一個身分的應用程式登入。請僅在您有需要此項的應用程式,而且有其他方法可驗證身分時,才使用這個選項。 cacheEnabled boolean true 啟用鑑別快取。 - basicRegistry
- 簡式 XML 型使用者登錄。
屬性名稱 資料類型 預設值 說明 id string 唯一的配置 ID。 ignoreCaseForAuthentication boolean false 容許不區分大小寫的使用者名稱鑑別。 realm string BasicRegistry 網域範圍名稱代表使用者登錄。 - classloading
- 廣域類別載入
屬性名稱 資料類型 預設值 說明 useJarUrls boolean false 要使用 jar: 或 wsjar: URL 來參照保存檔中的檔案 - jaasLoginContextEntry
- JAAS 登入環境定義項目配置。
屬性名稱 資料類型 預設值 說明 id string 唯一的配置 ID。 loginModuleRef 最上層 jaasLoginModule 元素的參照清單(逗點區隔的字串)。 hashtable,userNameAndPassword,certificate,token JAAS 登入模組 ID 的參照。 name string JAAS 配置項目的名稱。 - jaasLoginModule
- JAAS 配置中的登入模組。
屬性名稱 資料類型 預設值 說明 className string JAAS 登入模組類別的完整套件名稱。 controlFlag - SUFFICIENT
- REQUISITE
- REQUIRED
- OPTIONAL
REQUIRED 登入模組的控制旗標。有效值為 REQUIRED、REQUISITE、SUFFICIENT 和 OPTIONAL。 - SUFFICIENT
- 根據 JAAS 規格,這個 LoginModule 是「足夠的」。不需要有 LoginModule 就能成功。如果鑑別成功,則不會呼叫其他 LoginModule,同時控制權會回到呼叫端。
- REQUISITE
- 根據 JAAS 規格,這個 LoginModule 是 REQUISITE。必須要有 LoginModule 才能成功。如果鑑別失敗,則不會呼叫其他 LoginModule,同時控制權會回到呼叫端。
- REQUIRED
- 根據 JAAS 規格,這個 LoginModule 是「必要的」。必須要有 LoginModule 才能成功。
- OPTIONAL
- 根據 JAAS 規格,這個 LoginModule 是「選用的」。不需要有 LoginModule 就能成功。
id string 唯一的配置 ID。 libraryRef 最上層 library 元素的參照(字串)。 共用程式庫配置 ID 的參照。 - jaasLoginModule > library
說明: 共用程式庫配置 ID 的參照。必要: false資料類型: 屬性名稱 資料類型 預設值 說明 apiTypeVisibility string spec,ibm-api,api 這個程式庫的類別載入器將能夠看到的 API 套件類型,方式為下列項目之任何組合的逗點區隔清單:spec、ibm-api、api、third-party。 description string 管理者的共用程式庫說明 filesetRef 最上層 fileset 元素的參照清單(逗點區隔的字串)。 參照的檔案集 ID name string 管理者的共用程式庫名稱 - jaasLoginModule > library > file
說明: 參照的檔案 ID必要: false資料類型: 屬性名稱 資料類型 預設值 說明 id string 唯一的配置 ID。 name 檔案的路徑 完整檔名
- jaasLoginModule > library > fileset
說明: 參照的檔案集 ID必要: false資料類型: 屬性名稱 資料類型 預設值 說明 caseSensitive boolean true 指出搜尋是否應該區分大小寫的布林值(預設值:true)。 dir 目錄的路徑 ${server.config.dir} 搜尋檔案的基本目錄。 excludes string 要從搜尋結果中且以逗點或空格區隔的檔名型樣清單,預設為不排除任何檔案。 id string 唯一的配置 ID。 includes string * 要併入搜尋結果中且以逗點或空格區隔的檔名型樣清單(預設值:*)。 scanInterval 精準度是毫秒的時間量 0 用以檢查檔案集之變更的掃描間隔,以時間單位字尾 h-小時、m-分鐘、s-秒、ms-毫秒的長整數來表示(例如 2ms 或 5s)。預設為已停用 (scanInterval=0)。. 指定正整數加上時間單位,時間單位可以是小時 (h)、分鐘 (m)、秒 (s) 或毫秒 (ms)。例如,指定 500 毫秒為 500ms。您可以在單一項目中包括多個值。例如,1s500ms 相等於 1.5 秒。
- library
- 共用程式庫
屬性名稱 資料類型 預設值 說明 apiTypeVisibility string spec,ibm-api,api 這個程式庫的類別載入器將能夠看到的 API 套件類型,方式為下列項目之任何組合的逗點區隔清單:spec、ibm-api、api、third-party。 description string 管理者的共用程式庫說明 filesetRef 最上層 fileset 元素的參照清單(逗點區隔的字串)。 參照的檔案集 ID id string 唯一的配置 ID。 name string 管理者的共用程式庫名稱 - library > fileset
說明: 參照的檔案集 ID必要: false資料類型: 屬性名稱 資料類型 預設值 說明 caseSensitive boolean true 指出搜尋是否應該區分大小寫的布林值(預設值:true)。 dir 目錄的路徑 ${server.config.dir} 搜尋檔案的基本目錄。 excludes string 要從搜尋結果中且以逗點或空格區隔的檔名型樣清單,預設為不排除任何檔案。 id string 唯一的配置 ID。 includes string * 要併入搜尋結果中且以逗點或空格區隔的檔名型樣清單(預設值:*)。 scanInterval 精準度是毫秒的時間量 0 用以檢查檔案集之變更的掃描間隔,以時間單位字尾 h-小時、m-分鐘、s-秒、ms-毫秒的長整數來表示(例如 2ms 或 5s)。預設為已停用 (scanInterval=0)。. 指定正整數加上時間單位,時間單位可以是小時 (h)、分鐘 (m)、秒 (s) 或毫秒 (ms)。例如,指定 500 毫秒為 500ms。您可以在單一項目中包括多個值。例如,1s500ms 相等於 1.5 秒。
- ltpa
- 「小型認證機構 (LTPA)」記號配置。
屬性名稱 資料類型 預設值 說明 expiration 精準度是分鐘的時間量 120m 記號到期之前的時間量(分鐘)。. 指定正整數加上時間單位,時間單位可以是小時 (h) 或分鐘 (m)。例如,指定 30 分鐘為 30m。您可以在單一項目中包括多個值。例如,1h30m 相等於 90 分鐘。 keysFileName 檔案的路徑 ${server.output.dir}/resources/security/ltpa.keys 包含記號金鑰之檔案的路徑。 keysPassword 可逆的編碼密碼(字串) {xor}CDo9Hgw= 記號金鑰的密碼。其值可以用明碼或編碼形式儲存。建議您將密碼編碼,請搭配使用 securityUtility 工具與編碼選項。 monitorInterval 精準度是毫秒的時間量 0ms 伺服器檢查 LTPA 記號金鑰檔更新項目的頻率。. 指定正整數加上時間單位,時間單位可以是小時 (h)、分鐘 (m)、秒 (s) 或毫秒 (ms)。例如,指定 500 毫秒為 500ms。您可以在單一項目中包括多個值。例如,1s500ms 相等於 1.5 秒。 - quickStartSecurity
- 簡式管理安全配置。
屬性名稱 資料類型 預設值 說明 userName string 定義為快速入門安全配置之一部分的單一使用者。這位使用者獲授予「管理者」角色。 userPassword 可逆的編碼密碼(字串) 定義為快速入門安全配置之一部分的單一使用者密碼。建議您將此密碼編碼。如果要這麼做,請搭配使用 securityUtility 工具與編碼選項。