安全元件疑難排解提示
本文件說明 WebSphere® Application Server中診斷安全相關問題的基本資源和步驟。
要查看哪些 日誌檔 ,以及要在其中尋找哪些內容。
- 要查看的內容及要尋找的內容 使用 SDSF。
- 疑難排解安全相關問題的一般方法 ,用來隔離及解決安全問題。
- 何時及如何 追蹤安全。
設定元件追蹤 (CTRACE) 是將協助您追蹤活動的主題。
CSIv2 CORBA 次要程式碼的概觀和表格。
- 啟用安全之後發生錯誤和存取問題
啟用安全之後,效能會降低。 如需使用未限定原則檔的相關資訊,請參閱 啟用廣域安全 。
- 啟用 SSL 之後發生錯誤,或 SSL 相關錯誤訊息
嘗試配置及啟用安全時發生錯誤
如果這些步驟都無法解決問題,請使用「診斷及修正問題: 學習資源」文章中的鏈結來檢查是否已識別並記載問題。
如果您沒有看到類似您的問題,或者如果提供的資訊無法解決您的問題,請參閱 IBM 中的「疑難排解」說明,以取得進一步協助。
日誌檔
SASRas A CWWSA0001I: 安全配置已起始設定。 SASRas A CWWSA0002I: 鑑別通訊協定: CSIV2/IBM SASRas A CWWSA0003I: 鑑別機制: SWAM SASRas A CWWSA0004I: 主體名稱 :MYHOSTNAME/aServerID 已登錄 SASRas A CWWSA0005I: SecurityCurrent 。 SASRas A CWWSA0006I: 安全連線攔截程式已起始設定。 SASRas A CWWSA0007I: 已登錄用戶端要求攔截程式。 SASRas A CWWSA0008I: 伺服器要求攔截程式。 SASRas A CWWSA0009I: IOR 攔截程式已登錄。 NameServerImp I CWNMS0720I: 執行安全服務接聽器登錄。 SecurityCompo A CWSCJ0242A: 安全服務正在啟動中 UserRegistryI A CWSCJ0136I: 自訂 Registry:com.ibm.ws.security.registry.nt。 NTLocalDomainRegistryImpl 已起始設定 SecurityCompo A CWSCJ0202A: 管理應用程式已順利起始設定 SecurityCompo A CWSCJ0203A: 命名應用程式已順利起始設定 SecurityCompo A CWSCJ0204A: 角色型授權程式已順利起始設定 SecurityCompo A CWSCJ0205A: 安全管理 mBean 已順利登錄 SecurityCompo A CWSCJ0243A: 安全服務已順利啟動 SecurityCompo A CWSCJ0210A: Security enabled true
SASRas A CWWSA0001I: 安全配置已起始設定。 SASRas A CWWSA0002I: 鑑別通訊協定: CSIV2/IBM SASRas A CWWSA0003I: 鑑別機制: SWAM SASRas A CWWSA0004I: 主體名稱 :MYHOSTNAME/aServerID 已登錄 SASRas A CWWSA0005I: SecurityCurrent 。 SASRas A CWWSA0006I: 安全連線攔截程式已起始設定。 SASRas A CWWSA0007I: 已登錄用戶端要求攔截程式。 SASRas A CWWSA0008I: 伺服器要求攔截程式。 SASRas A CWWSA0009I: IOR 攔截程式已登錄。 NameServerImp I CWNMS0720I: 執行安全服務接聽器登錄。 SecurityCompo A CWSCJ0242A: 安全服務正在啟動中 UserRegistryI A CWSCJ0136I: 自訂 Registry:com.ibm.ws.security。 已起始設定 registry.nt.NTLocalDomainRegistryImpl Authenticatio E CWSCJ4001E: Login failed for badID/<null> javax.security.auth.login.LoginException: 鑑別失敗: 使用者/密碼不正確
SASRas A CWWSA0001I: 安全配置已起始設定。 SASRas A CWWSA0002I: 鑑別通訊協定: CSIV2/IBM SASRas A CWWSA0003I: 鑑別機制 :LTPA SASRas A CWWSA0004I: 主體名稱 :MYHOSTNAME/anID 已登錄 SASRas A CWWSA0005I: SecurityCurrent 。 SASRas A CWWSA0006I: 安全連線攔截程式已起始設定。 SASRas A CWWSA0007I: 已登錄用戶端要求攔截程式。 SASRas A CWWSA0008I: 伺服器要求攔截程式。 SASRas A CWWSA0009I: IOR 攔截程式已登錄。 NameServerImp I CWNMS0720I: 執行安全服務接聽器登錄。 SecurityCompo A CWSCJ0242A: 安全服務正在啟動中 UserRegistryI A CWSCJ0136I: 自訂 Registry:com.ibm.ws.security.registry.nt。 NTLocalDomainRegistryImpl 已起始設定 SecurityServe E CWSCJ0237E: 一或多個重要 LTPAServerObject 配置 屬性是空值或無法使用。 屬性及值為 password: LTPA password does exist, expiration time 30, private key <null>, public key <null>, and shared key <null>.
SASRas A CWWSA0001I: 安全配置已起始設定。 SASRas A CWWSA0002I: 鑑別通訊協定: CSIV2/IBM SASRas A CWWSA0003I: 鑑別機制: SWAM SASRas A CWWSA0004I: 主體名稱 :MYHOSTNAME/aServerID 已登錄 SASRas A CWWSA0005I: SecurityCurrent 。 SASRas A CWWSA0006I: 安全連線攔截程式已起始設定。 SASRas A CWWSA0007I: 已登錄用戶端要求攔截程式。 SASRas A CWWSA0008I: 伺服器要求攔截程式。 SASRas A CWWSA0009I: IOR 攔截程式已登錄。 SASRas E CWWSA0026E: [SecurityTaggedComponentAssistorImpl.register] 將物件連接至 ORB 時發生異常狀況。 請檢查 SSL 配置以確定 已適當地設定 SSL keyStore 和 trustStore 內容。 如果問題 持續,請聯絡支援中心以取得協助。 org.omg.CORBA.OBJ_ADAPTER: ORB_CONNECT_ERROR (5)-無法取得伺服器分包次要代碼: 4942FB8F 已完成: 否
使用 SDSF
在疑難排解安全元件時,請使用 System Display and Search Facility (SDSF) 來瀏覽日誌,以找出管理您嘗試存取之資源的伺服器。 下列訊息範例可協助您從已順利啟動安全服務的伺服器中查看:
+BBOM0001I com_ibm_authMechanisms_type_OID: 此機制沒有 OID。 +BBOM0001I com_ibm_security_SAF_unauthenticated: WSGUEST。 +BBOM0001I com_ibm_security_SAF_EJBROLE_Audit_Messages_Suppress: 0。 +BBOM0001I com_ibm_ws_logging_zos_errorlog_format_cbe: NOT SET , 280 DEFAULT=0. +BBOM0001I com_ibm_CSI_performClientAuthenticationRequired: 0。 +BBOM0001I com_ibm_CSI_performClientAuthenticationSupported: 1. +BBOM0001I com_ibm_CSI_performTransportAssocSSLTLSRequired: 0。 +BBOM0001I com_ibm_CSI_performTransportAssocSSLTLSSupported: 1. +BBOM0001I com_ibm_CSI_rmiInboundPropagationEnabled: 1. +BBOM0001I com_ibm_CSI_rmiOutboundLoginEnabled: 0。 +BBOM0001I com_ibm_CSI_rmiOutboundPropagationEnabled: 1. +BBOM0001I security_assertedID_IBM_accepted: 0。 +BBOM0001I security_assertedID_IBM_sent: 0。 +BBOM0001I security_disable_daemon_ssl: NOT SET , DEFAULT=0。 +BBOM0001I security_sslClientCerts_allowed: 0. +BBOM0001I security_sslKeyring: 未設定。 +BBOM0001I security_zOS_domainName: 未設定。 +BBOM0001I security_zOS_domainType: 0. +BBOM0001I security_zSAS_ssl_perto: SY1/DefaultIIOPSSL。 +BBOM0001I security_EnableRunAsIdentity: 0。 +BBOM0001I security_EnableSyncToOSThread: 0。 +BBOM0001I server_configured_system_name: SY1。 +BBOM0001I server_generic_short_name: BBOC001。 +BBOM0001I server_generic_uuid: 457 *** 從 BBOO0222I 開始的訊息適用於 *** 內的 Java *** WebSphere Application Server 安全 *** +BBOO0222I: SECJ6004I: 已停用安全審核。 +BBOO0222I: SECJ0215I: 已順利設定 JAAS 登入提供者 631 配置類別至 com.ibm.ws.security.auth.login.Configuration。 +BBOO0222I: SECJ0136I: 自訂 632 Registry:com.ibm.ws.security.registry.zOS.SAFRegistryImpl 已起始設定 +BBOO0222I: SECJ0157I: 已載入供應商 AuthorizationTable: 633 com.ibm.ws.security.core.SAFAuthorizationTableImpl
BBOM0001I security_zOS_domainName: 未設定。
BBOM0001I security_zOS_domainType: 0。
BBOM0001I security_SMF_record_first_auth_user: NOT SET , DEFAULT=1。
BBOJ0077I: java.security.policy = /WebSphere/V8R5/AppServer/profil
BBOJ0077I: es/default/properties/server.pol
BBOJ0077I: icy
BBOJ0077I: java.security.auth.login.config = /WebSphere/V8R5/AppServer
BBOJ0077I: /profiles/default/properties/wsj
BBOJ0077I: aas.conf
BBOO0222I: SECJ6004I: 已停用安全審核。
BBOO0222I: SECJ0215I: 已順利設定 JAAS 登入提供者
配置類別至 com.ibm.ws.security.auth.login.Configuration。
BBOO0222I: JSAS0001I: 安全配置已起始設定。
BBOO0222I: JSAS0003I: 鑑別機制 :LTPA
BBOO0222I: JSAS0004I: 主體名稱: DEFAULT/CBSYMSR1
BBOO0222I: JSAS0006I: 已起始設定安全連線攔截程式。
BBOO0222I: JSAS0009I: IOR 攔截程式已登錄。
BBOO0222I: SECJ0136I: 自訂
Registry:com.ibm.ws.security.registry.zOS.SAFRegistryImpl 已
已起始設定
BBOO0222I: SECJ6214I: 已啟用 SAF 授權。
BBOO0222I: ACWA0002I: 在 server1上未啟用 WorkArea 服務。
BBOO0222I: SECJ6216I: 已啟用 SAF 委派。
BBOO0222I: SECJ6216I: 已啟用 SAF 委派。
BBOO0222I: SECJ6216I: 已啟用 SAF 委派。
BBOO0222I: SRVE0169I: 正在載入 Web 模組 :WIM。
BBOO0222I: CHFW0019I: 「傳輸通道服務」已啟動鏈結
WCInboundAdmin.
BBOO0222I: CHFW0019I: 「傳輸通道服務」已啟動鏈結
WCInboundDefault.
BBOO0222I: CHFW0019I: 「傳輸通道服務」已啟動鏈結
WCInboundAdmin安全。
BBOO0222I: CHFW0019I: 「傳輸通道服務」已啟動鏈結
WCInboundDefault安全。
BBOO0222I: WSVR0001I: 開啟伺服器 SERVANT PROCESS server1
電子商務
BBOO0020I WEBSPHERE for Z/OS 服務者起始設定完成
PROCESS BBOS001。
./bborjtr.cpp+953 ... BBOO0222I: SECJ0231I: 安全元件的 FFDC 診斷模組 com.ibm.ws.security.core.Sec
urityDM 已登錄
successfully: true。
BossLog: { 0013} 2013/07/12 16:46:00.104 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
./bborjtr.cpp+953 ... BBOO0222I: SECJ0309I: Java 2 安全已停用。
BossLog: { 0014} 2013/07/12 16:46:00.143 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
./bborjtr.cpp+953 ... BBOO0222I: SECJ0212I: WCCM JAAS 配置資訊已順利推送至登入提供者
類別。
BossLog: { 0015} 2013/07/12 16:46:00.258 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
./bborjtr.cpp+953 ... BBOO0222I: SECJ0240I: 安全服務起始設定已順利完成
BossLog: { 0016} 2013/07/12 16:46:00.448 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
./bborjtr.cpp+953 ... FFDC0009I: FFDC 開啟事件串流檔 /WebSphere/V8R5/AppServer/profiles/default/logs/ffdc/S
Y1_SY1_server1_STC
00042_BBOS001S_06.07.12_16.46.00_0.txt
BossLog: { 0017} 2013/07/12 16:46:00.532 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
./bborjtr.cpp+953 ... FFDC0010I: FFDC 關閉事件串流檔 /WebSphere/V8R5/AppServer/profiles/default/logs/ffdc/S
Y1_SY1_server1_STC
00042_BBOS001S_06.07.12_16.46.00_0.txt
./bborjtr.cpp+953 ... BBOO0222I: SECJ0243I: 安全服務已順利啟動
BossLog: { 0035} 2013/07/12 16:46:24.670 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
./bborjtr.cpp+953 ... BBOO0222I: SECJ0210I: Security enabled true
BossLog: { 0036} 2013/07/12 16:46:24.795 01 SYSTEM=SY1 SERVER=BBOS001 PID=0X02010022 TID=0X266AF610 00000000 c = UNK
安全相關問題疑難排解的一般方法
- 當安全已停用時,是否發生問題?
- 此問題是用來判斷問題是否與安全相關的試金石。 不過,僅因為只有在啟用安全時才會發生問題,並不一律會使它成為安全問題。 需要進行更多疑難排解,以確保問題確實與安全相關。
- 安全似乎已適當地起始設定嗎?
- 起始設定期間會造訪許多安全碼。 因此,如果問題與配置相關,您可以先在那裡看到問題。
在 SystemOut.log 中產生的下列訊息序列指出應用程式伺服器的正常程式碼起始設定。 此順序會根據配置而有所不同,但訊息類似:
SASRas A CWWSA0001I: 安全配置已起始設定。 SASRas A CWWSA0002I: 鑑別通訊協定: CSIV2/IBM SASRas A CWWSA0003I: 鑑別機制: SWAM SASRas A CWWSA0004I: 主體名稱: BIRKT20/pbirk 已登錄 SASRas A CWWSA0005I: SecurityCurrent 。 SASRas A CWWSA0006I: 安全連線攔截程式已起始設定。 SASRas A CWWSA0007I: 已登錄用戶端要求攔截程式。 SASRas A CWWSA0008I: 伺服器要求攔截程式。 SASRas A CWWSA0009I: IOR 攔截程式已登錄。 NameServerImp I CWNMS0720I: 執行安全服務接聽器登錄。 SecurityCompo A CWSCJ0242A: 安全服務正在啟動中 UserRegistryI A CWSCJ0136I: 自訂 Registry:com.ibm.ws.security.registry.nt。 NTLocalDomainRegistryImpl 已起始設定 SecurityCompo A CWSCJ0202A: 管理應用程式已順利起始設定 SecurityCompo A CWSCJ0203A: 命名應用程式已順利起始設定 SecurityCompo A CWSCJ0204A: 角色型授權程式已順利起始設定 SecurityCompo A CWSCJ0205A: 安全管理 mBean 已順利登錄 SecurityCompo A CWSCJ0243A: 安全服務已順利啟動 SecurityCompo A CWSCJ0210A: Security enabled true
在 SDSF 作用中日誌中產生的下列訊息序列指出應用程式伺服器的正常程式碼起始設定。 已從後續序列中移除非安全訊息。 此順序將根據配置而改變,但訊息類似:Trace: 2013/05/06 17:27:31.539 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: printProperties SourceId: com.ibm.ws390.orb.CommonBridge Category: AUDIT ExtendedMessage: BBOJ0077I java.security.policy = /WebSphere/V8R5M0/AppServer/profiles/default/pr Trace: 2013/05/06 17:27:31.779 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: printProperties SourceId: com.ibm.ws390.orb.CommonBridge Category: AUDIT ExtendedMessage: BBOJ0077I java.security.auth.login.config = /WebSphere/V8R5M0/AppServer/profiles/default/pr Trace: 2013/05/06 17:27:40.892 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.core.SecurityDM SourceId: com.ibm.ws.security.core.SecurityDM 種類 :INFO ExtendedMessage: BBOO0222I: SECJ0231I: 安全元件的 FFDC 診斷模組 com.ibm.ws.security.core.Secur red successfully: true. Trace: 2013/05/06 17:27:40.892 01 t=8E96E0 c = UNK key=P8 (0000000A) 說明: 日誌 Boss/390 錯誤 from filename:./bborjtr.cpp 第 932 行 錯誤訊息: BBOO0222I: SECJ0231I: 安全元件的 FFDC 診斷模組 com.ibm.ws.security.core.Securit d 順利完成 :true。 Trace: 2013/05/06 17:27:41.054 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.audit.AuditServiceImpl SourceId: com.ibm.ws.security.audit.AuditServiceImpl Category: AUDIT ExtendedMessage: BBOO0222I: SECJ6004I: 安全審核已停用。 Trace: 2013/05/06 17:27:41.282 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.core.distSecurityComponentImpl SourceId: com.ibm.ws.security.core.distSecurityComponentImpl 種類 :INFO ExtendedMessage: BBOO0222I: SECJ0309I: Java 2 安全已停用。 Trace: 2013/05/06 17:27:41.282 01 t=8E96E0 c = UNK key=P8 (0000000A) 說明: 日誌 Boss/390 錯誤 from filename:./bborjtr.cpp 第 932 行 錯誤訊息: BBOO0222I: SECJ0309I: Java 2 安全已停用。 Trace: 2013/05/06 17:27:42.239 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.auth.login.Configuration SourceId: com.ibm.ws.security.auth.login.Configuration Category: AUDIT ExtendedMessage: BBOO0222I: SECJ0215I: 已順利設定 JAAS 登入 提供者配置類別至 com.ibm.ws.securit 配置。 Trace: 2013/05/06 17:27:42.253 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.core.distSecurityComponentImpl SourceId: com.ibm.ws.security.core.distSecurityComponentImpl 種類 :INFO ExtendedMessage: BBOO0222I: SECJ0212I: WCCM JAAS 配置資訊 已順利推送至登入提供者區域 Trace: 2013/05/06 17:27:42.254 01 t=8E96E0 c = UNK key=P8 (0000000A) 說明: 日誌 Boss/390 錯誤 from filename:./bborjtr.cpp 第 932 行 錯誤訊息: BBOO0222I: SECJ0212I: WCCM JAAS 配置資訊 已順利推送至登入提供者類別。 Trace: 2013/05/06 17:27:42.306 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.core.distSecurityComponentImpl SourceId: com.ibm.ws.security.core.distSecurityComponentImpl 種類 :INFO ExtendedMessage: BBOO0222I: SECJ0240I: 安全服務起始設定 已順利完成 Trace: 2013/05/06 17:27:42.306 01 t=8E96E0 c = UNK key=P8 (0000000A) 說明: 日誌 Boss/390 錯誤 from filename:./bborjtr.cpp 第 932 行 錯誤訊息: BBOO0222I: SECJ0240I: 安全服務起始設定 已順利完成 Trace: 2013/05/06 17:27:42.952 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.objectpool.ObjectPoolService SourceId: com.ibm.ws.objectpool.ObjectPoolService 種類 :INFO ExtendedMessage: BBOO0222I: OBPL0007I: 物件儲存區管理程式服務 已停用。 Trace: 2013/05/06 17:27:53.512 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.registry.UserRegistryImpl SourceId: com.ibm.ws.security.registry.UserRegistryImpl Category: AUDIT ExtendedMessage: BBOO0222I: SECJ0136I: 自訂 Registry:com.ibm.ws.security.registry.zOS.SAFRegistryImpl 已起始設定 Trace: 2013/05/06 17:27:55.229 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.role.PluggableAuthorizationTableProxy SourceId: com.ibm.ws.security.role.PluggableAuthorizationTableProxy Category: AUDIT ExtendedMessage: BBOO0222I: SECJ0157I: 已載入供應商 AuthorizationTable: com.ibm.ws.security.core.SAFAuthorizationTab Trace: 2013/05/06 17:27:56.481 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.core.distSecurityComponentImpl SourceId: com.ibm.ws.security.core.distSecurityComponentImpl 種類 :INFO ExtendedMessage: BBOO0222I: SECJ0243I: 安全服務已順利啟動 Trace: 2013/05/06 17:27:56.481 01 t=8E96E0 c = UNK key=P8 (0000000A) 說明: 日誌 Boss/390 錯誤 from filename:./bborjtr.cpp 第 932 行 錯誤訊息: BBOO0222I: SECJ0243I: 安全服務已順利啟動 Trace: 2013/05/06 17:27:56.482 01 t=8E96E0 c = UNK key=P8 (13007002) ThreadId: 0000000a FunctionName: com.ibm.ws.security.core.distSecurityComponentImpl SourceId: com.ibm.ws.security.core.distSecurityComponentImpl 種類 :INFO ExtendedMessage: BBOO0222I: SECJ0210I: Security enabled true Trace: 2013/05/06 17:27:56.483 01 t=8E96E0 c = UNK key=P8 (0000000A) 說明: 日誌 Boss/390 錯誤 from filename:./bborjtr.cpp 第 932 行 錯誤訊息: BBOO0222I: SECJ0210I: Security enabled true - 系統日誌檔中是否有列印堆疊追蹤或異常狀況?
- 單一堆疊追蹤會指出問題的許多相關資訊。 哪個程式碼起始失敗的程式碼? 何謂失敗元件? 到底是哪個班的失敗? 有時堆疊追蹤是解決問題所需要的一切,它可以精確找出主要原因。 其他時候,它只能給我們一條線索,實際上是誤導。 當支援中心分析堆疊追蹤時,如果不清楚問題是什麼,他們可以要求其他追蹤。 如果它似乎與安全相關,且無法從堆疊追蹤或問題說明判定解決方案,則會要求您從所有涉及的處理程序收集下列追蹤規格: SASRas=all=enabled:com.ibm.ws.security.*=all=enabled 。
- 這是分散式安全問題還是本端安全問題?
- 如果問題是本端問題,亦即所涉及的程式碼不會進行遠端方法呼叫,則疑難排解會隔離至單一處理程序。 請務必知道問題是本端問題還是分散式問題,因為物件要求分配管理系統 (ORB) 在其他元件之間的行為不同。 當發生遠端方法呼叫時,會輸入完全不同的安全碼路徑。
- 當您知道問題涉及兩個以上伺服器時,疑難排解變更的技術。 您需要同步追蹤所有涉及的伺服器,以便追蹤顯示問題的用戶端和伺服器端。 請確定所有機器上的時間戳記盡可能相符,以便您可以從兩個不同的處理程序中找到要求和回覆配對。 使用追蹤規格來啟用「安全鑑別服務 (SAS)」或 z/SAS 及「安全」追蹤: SASRas=all=enabled:com.ibm.ws.security.*=all=enabled。
如需啟用追蹤的相關資訊,請參閱 使用追蹤。
- 問題是否與鑑別或授權相關?
- 大部分安全問題都屬於這兩個種類之一。 鑑別是判斷呼叫者是誰的程序。 授權是驗證呼叫者是否具有適當的權限來呼叫所要求的方法的程序。 當鑑別失敗時,此失敗通常與鑑別通訊協定、鑑別機制或使用者登錄相關。 當授權失敗時,這通常與組合和部署中的應用程式連結,以及存取方法和方法所需角色的呼叫端身分相關。
- 這是 Web 或 EJB 要求嗎?
Web 要求的程式碼路徑與 Enterprise JavaBeans (EJB) 要求完全不同。 Web 要求與 EJB 要求存在不同的安全特性,需要完全不同的知識主體來解決。 例如,當使用「小型認證機構 (LTPA)」鑑別機制時,單一登入特性 (SSO) 適用於 Web 要求,但不適用於 EJB 要求。 Web 要求涉及由於通訊協定差異而 EJB 要求不需要的 HTTP 標頭資訊。 此外, Web 儲存器或 Servlet 引擎也涉及整個程序。 根據要求類型及發生失敗的位置,其中任何元件都可能涉及問題,且在疑難排解期間都需要考量。
安全 EJB 要求大量涉及 ORB 和命名元件,因為它們透過 RMI/IIOP 通訊協定流動。 此外,當啟用 Workload Manager (WLM) 時,可以觀察程式碼中的其他行為變更。 所有這些元件都緊密互動,以確保安全在此環境中適當地運作。 有時,可能需要在任何或所有這些元件中進行追蹤,才能對此區域中的問題進行疑難排解。
開頭的追蹤規格是 SASRas=all=enabled:com.ibm.ws.security.*=all=enabled。 當 SAS/ 安全追蹤似乎無法精確找出問題時, ORB 追蹤也非常有用。
安全 EJB 要求會從控制器傳遞給服務者。 控制器大部分會忽略 Web 要求。 因此, EJB 要求會先由 zSAS 或 Common Security Interoperability 第 2 版 (CSIv2) 安全層處理及鑑別。 授權由服務者完成。 如果鑑別失敗,必須開啟 zSAS 類型追蹤層次,才能診斷問題。 使用 WebSphere Application Server 元件追蹤 (CTRACE) 機能可以診斷其他問題。
- 問題似乎與 Secure Sockets Layer (SSL) 相關嗎?
SSL 是完全不同的個別安全層。 對 SSL 問題進行疑難排解通常與對鑑別和授權問題進行疑難排解是分開的,您有許多考量。 通常, SSL 問題是第一次設定的問題,因為配置可能很困難。 每一個用戶端必須包含伺服器的簽章者憑證。 在交互鑑別期間,每一部伺服器必須包含用戶端的簽章者憑證。 此外,也可能有通訊協定差異 (SSLv3 與「傳輸層安全 (TLS)」) ,以及與過時「可交互作業的物件參照 (IOR)」(即來自伺服器的 IOR) 相關的接聽器埠問題,反映伺服器重新啟動之前的埠。
在 z/OS中,使用兩種 SSL 變異。 若要判斷 z/OS上 SSL 問題的原因,您必須瞭解正在使用的通訊協定。
- 「網際網路交互 ORB 通訊協定 (IIOP)」和 HTTP 通訊協定使用系統 SSL
- 所有其他通訊協定 (例如 SOAP) 都使用 Java Secure Socket Extension (JSSE)。
- 系統 SSL 要求在控制器中處理,並由 z/SAS 和 CSIv2 安全使用。
- SJSSE 主要由服務者使用,但也有在控制器中使用 JSSE 的情況。
對於 SSL 問題,有時您會收到 SSL 追蹤的要求,以判斷 SSL 信號交換發生什麼情況。 SSL 信號交換是當用戶端開啟伺服器的 Socket 時所進行的處理程序。 如果金鑰交換、密碼交換等有任何問題,信號交換會失敗,且 Socket 無效。 追蹤 JSSE ( WebSphere Application Server中使用的 SSL 實作) 涉及下列步驟:- 在用戶端及伺服器處理程序上設定下列系統內容: -Djavax.net.debug=true。 對於伺服器,請將系統內容新增至 Java 虛擬機器設定頁面的 通用 JVM 引數 內容。
也開啟 ORB 追蹤。
- 重建問題。
這兩個處理程序的 SystemOut.log 都包含 JSSE 追蹤。 您可以找到類似下列範例的追蹤:
SSLConnection: 安裝 <com.ibm.sslite.e@3ae78375> >> handleHandshakeV2 <com.ibm.sslite.e@3ae78375> >> handshakeV2 type = 1 >> clientHello: SSLv2. SSL 用戶端版本: 3.0 ... ... ... JSSEContext: handleSession[Socket [addr=null,port=0,localport=0]] << sendServerHello. SSL 版本: 3.0 SSL_RSA_WITH_RC4_128_MD5 HelloRandom ... ... ... << sendCertificate. << sendServerHelloDone. >> handleData <com.ibm.sslite.e@3ae78375> >> handleHandshake <com.ibm.sslite.e@3ae78375> >> handshakeV3 type = 16 >> clientKeyExchange。 >> handleData <com.ibm.sslite.e@3ae78375> >> handleChangeCipherSpec <com.ibm.sslite.e@3ae78375> >> handleData <com.ibm.sslite.e@3ae78375> >> handleHandshake <com.ibm.sslite.e@3ae78375> >> handshakeV3 type = 20 >> 已完成。 << sendChangeCipherSpec. << sendFinished.
區域啟動型作業的 SYSOUT 資料集包含 JSSE 追蹤。 使用 SDSF,此追蹤類似於下列:
JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com/9.38.48.108,port=2139,localport=8878]] JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com/9.38.48.108,port=2140,localport=8878]] TrustManagerFactoryImpl: trustStore 是: /WebSphere/V8R50M0/AppServer/etc/DummyServerTrustFile.jks TrustManagerFactoryImpl: trustStore 類型是 JKS TrustManagerFactoryImpl: 起始信任儲存庫 JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com/9.38.48.108,port=2142,localport=8878]] KeyManagerFactoryImpl: keyStore 是: /WebSphere/V8R5M0/AppServer/etc/DummyServerKeyFile.jks KeyManagerFactoryImpl: keyStore 類型是 JKS KeyManagerFactoryImpl: 起始金鑰儲存庫 KeyManagerFactoryImpl: 起始金鑰儲存庫 JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com/9.38.48.108,port=2143,localport=8878]] JSSEContext: handleSession[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM/9.38.48.108,port=8879,localport=2145]] JSSEContext: confirmPeer憑證 [Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM/9.38.48.108,port=8879, localport=2145]] X509TrustManagerImpl: checkServer授信 X509TrustManagerImpl: 憑證 [ [ 版本: V3 主旨 :CN=jserver , OU=SWG , O=IBM, C=US 簽章演算法: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 金鑰 :IBMJCE RSA 公開金鑰: 模數: 10094996692239509074796828756118539107568369566313889955538950668 6622953008589748001058216362638201577071902071311277365773252660799 128781182947273802312699983556527878615792292244995317112436562491 489904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 有效性: [From: Fri Jun 21 20:08:18 GMT 2013 , To: Thu Mar 17 20:08:18 GMT 2014] 發證者 :CN=jserver , OU=SWG , O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] 演算法: [MD5withRSA] 簽章: 0000: 54 DC B5 FA 64 C9 CD FE B3 EF 15 22 3D D0 20 31 T .. d ...... " =. 1 0010: 99 F7 A7 86 F9 4C 82 9F 6E 4B 7B 47 18 2E C6 25 .....L.nK。G.% 0020: 5B B2 9B 78 D8 76 5C 82 07 95 DD B8 44 62 02 62 [..x.v\.....Db.b 0030: 60 2A 0A 6D 4F B9 0A 98 14 27 E9 BB 1A 84 8A D1 ` *.mO.... ' 0040: C2 22 AF 70 9E A5 DF A2 FD 57 37 CE 3A 63 1B EB. p .....W7.:c.. 0050: E8 91 98 9D 7B 21 4A B5 2C 94 FC A9 30 C2 74 72 .....!J.,...0.tr 0060: 95 01 54 B1 29 E7 F8 9E 6D F3 B5 D7 B7 D2 9E 9B .T.) ... m ....... 0070: 85 D8 E4 CF C2 D5 3B 64 F0 07 17 9E 1E B9 2F 79 ......; ....d ../y 0] X509TrustManagerImpl: 憑證 [ [ 版本: V3 主旨 :CN=jserver , OU=SWG , O=IBM, C=US 簽章演算法: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 金鑰 :IBMJCE RSA 公開金鑰: 模數: 1009499669223950907479682875611853910756836956631388995553895066866 22953008589748001058216362638201577071902071311277365773252660799 1287811829472738023126999835565278786157922922449953171124365624914 89904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 有效性: [From: Fri Jun 21 20:08:18 GMT 2013 , To: Thu Mar 17 20:08:18 GMT 2015] 發證者 :CN=jserver , OU=SWG , O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] 演算法: [MD5withRSA] 簽章: 0000: 54 DC B5 FA 64 C9 CD FE B3 EF 15 22 3D D0 20 31 T .. d ...... " =. 1 0010: 99 F7 A7 86 F9 4C 82 9F 6E 4B 7B 47 18 2E C6 25 .....L.nK。G.% 0020: 5B B2 9B 78 D8 76 5C 82 07 95 DD B8 44 62 02 62 [..x.v\.....Db.b 0030: 60 2A 0A 6D 4F B9 0A 98 14 27 E9 BB 1A 84 8A D1 ` *.mO.... ' 0040: C2 22 AF 70 9E A5 DF A2 FD 57 37 CE 3A 63 1B EB. p .....W7.:c.. 0050: E8 91 98 9D 7B 21 4A B5 2C 94 FC A9 30 C2 74 72 .....!J.,...0.tr 0060: 95 01 54 B1 29 E7 F8 9E 6D F3 B5 D7 B7 D2 9E 9B .T.) ... m ....... 0070: 85 D8 E4 CF C2 D5 3B 64 F0 07 17 9E 1E B9 2F 79 ......; ....d ../y 0] JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com /9.38.48.108,port=2144,localport=8878]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2145]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2146]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2147]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2148]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2149]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2150]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2151]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2152]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2153]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2154]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2155]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2156]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2157]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2158]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2159]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2160]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2161]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2162]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2163]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2164]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2165]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2166]] JSSEContext: handleSession[Socket [addr=boss0106.plex1.l2.ibm.com /9.38.48.108,port=9443,localport=2167]] JSSEContext: confirmPeerCertificate [Socket [addr=boss0106.plex1.l2.ibm.com /9.38.48.108,port=9443,localport=2167]] X509TrustManagerImpl: checkServer授信 X509TrustManagerImpl: 憑證 [ [ 版本: V3 主旨 :CN=WAS z/OS Deployment Manager , O=IBM 簽章演算法: SHA1withRSA, OID = 1.2.840.113549.1.1.5 0 金鑰 :IBMJCE RSA 公開金鑰: 模數: 12840948267119651469312486548020957441946413494498370439558603901582589 8755033448419534105183133064366466828741516428176579440511007 6258795528749232737808897160958348495006972731464152299032614592135114 19361539962555997136085140591098259345625853617389396340664766 649957749527841107121590352429348634287031501 public exponent: 65537 0 有效性: [From: Fri Jun 25 05:00:00 GMT 2013 , To: Mon Jun 26 04:59:59 GMT 2015] Issuer: CN=WAS CertAuth, C=US SerialNumber: [02] 0Certificate 延伸: 3 [1]: ObjectId: 2.16.840.1.113730.1.13 Criticality=false 延伸不明 :DER 編碼 OCTET 字串 = 0000: 04 3C 13 3A 47 65 6E 65 72 61 74 65 64 20 62 79 .<.:Generated by 0010: 20 74 68 65 20 53 65 63 75 72 65 57 61 79 20 53 the SecureWay S 0020: 65 63 75 72 69 74 79 20 53 65 72 65 72 20 66 安全伺服器 f 0030: 6F 72 20 7A 2F 4F 53 20 28 52 41 43 46 29 或 z/OS (RACF) -[2]: ObjectId: 2.5.29.14 Criticality=false SubjectKeyID [ KeyIdentifier [ 0000: 05 6A CD 7F AE AF 89 78 99 A8 F1 5B 64 8B 9F AF .j ..... x... [d... 0010:73 1B 58 65 s.Xe ] ] 0 [3]: ObjectId: 2.5.29.35 Criticality=false AuthorityKeyID [ KeyIdentifier [ 0000: 7E D1 7B 17 74 D3 AD D1 7D D8 F8 33 85 19 04 F8 ....t......3.... 0010: 36 51 57 16 6QW。 ] 0] 0] 演算法: [SHA1withRSA] 簽章: 0000: 73 0D FC E1 8A B3 42 E1 04 73 72 B1 C6 C9 87 54 s .....B.. sr.T 0010: 87 57 02 FA 41 32 D8 B0 39 09 86 CB 6B 03 B6 F9 .W..A2..9...k... 0020: 62 8D 95 36 56 0E D4 D2 F7 7A 8D 4B FB 0B FD 91 b..6V....z.K.... 0030: 89 A8 08 41 30 E2 27 DC 15 5F 2C F4 CD 2F 6B 8E ...A0. ' .. _ , ../k. 0040:21 2A 88 53 46 27 68 9B 55 14 38 8E 1F 50 95 BC! * .SF 'h.U.8..P.. 0050: A8 46 F6 68 97 9E 7B 65 9E E8 A7 34 B2 C8 63 CF .F.h...e...4..c。 0060: 73 C8 4E 25 0A EF C5 8F 04 A4 EB 8C CC 33 84 26 s.N%.........3.& 0070: 5D FD 7C AD 7B 02 13 5A 86 A1 89 93 1E A4 93 63] ......Z.......c 0] X509TrustManagerImpl: 憑證 [ [ 版本: V3 主旨 :CN=WAS CertAuth, C=US 簽章演算法: SHA1withRSA, OID = 1.2.840.113549.1.1.5 0 金鑰 :IBMJCE RSA 公開金鑰: 模數: 1167408593733331602218385578183389496484587418638676352829560040529918 40558681208199977833401609895748222369066230329785148883251144 2382911186804921983976695395381692334250582278359056431484427844566504 41491799952592864895242987037929408453455627552772317382077015 828713585220212502839546496071839496308430393 public exponent: 65537 0 有效性: [From: Fri Jun 25 05:00:00 GMT 2013 , To: Sat Jun 24 04:59:59 GMT 2015] Issuer: CN=WAS CertAuth, C=US SerialNumber: [0] 0Certificate 延伸: 4 [1]: ObjectId: 2.16.840.1.113730.1.13 Criticality=false 延伸不明 :DER 編碼 OCTET 字串 = 0000: 04 3C 13 3A 47 65 6E 65 72 61 74 65 64 20 62 79 .<.:Generated by 0010: 20 74 68 65 20 53 65 63 75 72 65 57 61 79 20 53 the SecureWay S 0020: 65 63 75 72 69 74 79 20 53 65 72 65 72 20 66 安全伺服器 f 0030: 6F 72 20 7A 2F 4F 53 20 28 52 41 43 46 29 或 z/OS (RACF) -[2]: ObjectId: 2.5.29.14 Criticality=false SubjectKeyID [ KeyIdentifier [ 0000: 7E D1 7B 17 74 D3 AD D1 7D D8 F8 33 85 19 04 F8 ....t......3.... 0010: 36 51 57 16 6QW。 ] ] 0 [3]: ObjectId: 2.5.29.15 Criticality=true KeyUsage [ Key_CertSign Crl_Sign ] 0 [4]: ObjectId: 2.5.29.19 Criticality=true BasicConstraints:[ CA :true PathLen:2147483647 ] 0] 演算法: [SHA1withRSA] 簽章: 0000: 43 88 AB 19 5D 00 54 57 5E 96 FA 85 CE 88 4A BF C ..]. TW ^ .....J. 0010: 6E CB 89 4C 56 BE EF E6 8D 2D 74 B5 83 1A EF 9C n.LV ...-t ... 0020: B3 82 F2 16 84 FA 5C 50 53 2A B4 FD EB 27 98 5D ...... \PS* ... '.] 0030: 43 48 D3 74 85 21 D1 E1 F2 63 9E FB 58 2A F3 6A CH.t.! ... c ..X* .j 0040:44 D2 F5 7D B2 55 B9 5E 32 11 78 B6 34 8E 4B 1D D ...U.^2.x.4.K. 0050: F3 82 1D C1 5F 7B 3F AD C9 29 FA FF D1 D1 13 2C .... _.? ..) ..... , 0060: 57 F7 7B 51 02 99 6F ED 54 E1 51 34 B8 51 BE 97 W..Q..o.T.Q4.Q.. 0070: 30 AC 4F 89 AB AA 8A B2 E1 40 89 2E 18 C7 0E 15 0.O......@...... 0] JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com /9.38.48.108,port=9443,localport=2167]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2168]] JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com /9.38.48.108,port=2235,localport=8878]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8879,localport=2236]] JSSEContext: handleSession[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8880,localport=2238]] JSSEContext: confirmPeerCertificate [Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM /9.38.48.108,port=8880,localport=2238]] X509TrustManagerImpl: checkServer授信 X509TrustManagerImpl: 憑證 [ [ 版本: V3 主旨 :CN=jserver , OU=SWG , O=IBM, C=US 簽章演算法: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 金鑰 :IBMJCE RSA 公開金鑰: 模數: 100949966922395090747968287561185391075683695663138899555389506686622953 008589748001058216362638201577071902071311277365773252660799 1287811829472738023126999835565278786157922922449953171124365624914 89904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 有效性: [From: Fri Jun 21 20:08:18 GMT 2013 , To: Thu Mar 17 20:08:18 GMT 2015] 發證者 :CN=jserver , OU=SWG , O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] 演算法: [MD5withRSA] 簽章: 0000: 54 DC B5 FA 64 C9 CD FE B3 EF 15 22 3D D0 20 31 T .. d ...... " =. 1 0010: 99 F7 A7 86 F9 4C 82 9F 6E 4B 7B 47 18 2E C6 25 .....L.nK。G.% 0020: 5B B2 9B 78 D8 76 5C 82 07 95 DD B8 44 62 02 62 [..x.v\.....Db.b 0030: 60 2A 0A 6D 4F B9 0A 98 14 27 E9 BB 1A 84 8A D1 ` *.mO.... ' 0040: C2 22 AF 70 9E A5 DF A2 FD 57 37 CE 3A 63 1B EB. p .....W7.:c.. 0050: E8 91 98 9D 7B 21 4A B5 2C 94 FC A9 30 C2 74 72 .....!J.,...0.tr 0060: 95 01 54 B1 29 E7 F8 9E 6D F3 B5 D7 B7 D2 9E 9B .T.) ... m ....... 0070: 85 D8 E4 CF C2 D5 3B 64 F0 07 17 9E 1E B9 2F 79 ......; ....d ../y 0] X509TrustManagerImpl: 憑證 [ [ 版本: V3 主旨 :CN=jserver , OU=SWG , O=IBM, C=US 簽章演算法: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 金鑰 :IBMJCE RSA 公開金鑰: 模數: 100949966922395090747968287561185391075683695663138899555389506 686622953008589748001058216362638201577071902071311277365773252660799 12878118294727380231269998355652787861579229224499531711243656249 1489904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 有效性: [From: Fri Jun 21 20:08:18 GMT 2013 , To: Thu Mar 17 20:08:18 GMT 2015] 發證者 :CN=jserver , OU=SWG , O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] 演算法: [MD5withRSA] 簽章: 0000: 54 DC B5 FA 64 C9 CD FE B3 EF 15 22 3D D0 20 31 T .. d ...... " =. 1 0010: 99 F7 A7 86 F9 4C 82 9F 6E 4B 7B 47 18 2E C6 25 .....L.nK。G.% 0020: 5B B2 9B 78 D8 76 5C 82 07 95 DD B8 44 62 02 62 [..x.v\.....Db.b 0030: 60 2A 0A 6D 4F B9 0A 98 14 27 E9 BB 1A 84 8A D1 ` *.mO.... ' 0040: C2 22 AF 70 9E A5 DF A2 FD 57 37 CE 3A 63 1B EB. p .....W7.:c.. 0050: E8 91 98 9D 7B 21 4A B5 2C 94 FC A9 30 C2 74 72 .....!J.,...0.tr 0060: 95 01 54 B1 29 E7 F8 9E 6D F3 B5 D7 B7 D2 9E 9B .T.) ... m ....... 0070: 85 D8 E4 CF C2 D5 3B 64 F0 07 17 9E 1E B9 2F 79 ......; ....d ../y 0] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM/ 9.38.48.108,port=8880,localport=2238]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM/ 9.38.48.108,port=8880,localport=2239]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM/ 9.38.48.108,port=8880,localport=2240]] JSSEContext: handleConnection[Socket [addr=BOSSXXXX.PLEX1.L2.IBM.COM/ 9.38.48.108,port=8880,localport=2241]]
追蹤安全
- com.ibm.ws.security.*
- com.ibm.websphere.security.*
- com.ibm.WebSphereSecurityImpl.*
SASRas
- com.ibm.ws.wim.* 使用「虛擬成員管理程式 (VMM)」儲存庫進行追蹤
- com.ibm.ws.security.*=all=enabled:com.ibm.WebSphereSecurityImpl.*= all=enabled:com.ibm.websphere.security.*=all=enabled。 此追蹤陳述式會收集安全執行時期的追蹤。
- com.ibm.ws.console.security.*=all=enabled。 此追蹤陳述式會收集安全中心管理主控台的追蹤。
- SASRas=all=enabled。 此追蹤陳述式會收集 SAS (低階鑑別邏輯) 的追蹤。
- com.ibm.ws.wim.*=all=enabled:com.ibm.websphere.wim.*=all=enabled。 此追蹤陳述式會收集 VMM 的追蹤。
細部調整 SAS 追蹤:
如果需要追蹤 SAS/CSIv2 元件的類別子集,則可以用逗點區隔類別名稱來指定系統內容: com.ibm.CORBA.securityTraceFilter=SecurityConnectionInterceptorImpl, VaultImpl, ...
- 微調安全追蹤:
- 如果需要追蹤套件子集,請指定比 com.ibm.ws.security.*=all=enabled更詳細的追蹤規格。 例如,若要僅追蹤動態原則程式碼,您可以指定 com.ibm.ws.security.policy.*=all=enabled。 若要停用動態原則追蹤,您可以指定 com.ibm.ws.security.policy.*=all=disabled。
配置 CSIv2或 z/SAS 追蹤設定
檢閱 CSIv2 和 z/SAS 鑑別通訊協定的追蹤有助於疑難排解難題時發生的狀況。 本節說明如何啟用 CSIv2 和 z/SAS 追蹤。
- 啟用用戶端 CSIv2 和 z/SAS 追蹤
- 若要在純用戶端上啟用 CSIv2 和 z/SAS 追蹤,需要採取下列步驟:
- 編輯 /WebSphere/AppServer/properties 目錄中的 TraceSettings.properties 檔案。
- 在此檔案中,將 traceFileName= 變更為指向您要在其中建立輸出檔的路徑。 請確定在每一個子目錄之間放置雙反斜線 (\\)。 例如:traceFileName=c:\\WebSphere\\AppServer\\logs\\sas_client.log
- 在此檔案中,新增追蹤規格字串: SASRas=all=enabled。 可以在個別行上新增任何其他追蹤字串。
- 從用戶端應用程式內指向此檔案。 在您啟動用戶端的 Java 指令行上,新增下列系統內容: -DtraceSettingsFile=TraceSettings.properties。附註: 請勿提供 TraceSettings.properties 檔案的完整路徑。 請確定 TraceSettings.properties 檔位於類別路徑中。
啟用伺服器端 CSIv2 和 z/SAS 追蹤
若要在應用程式伺服器中啟用 z/SAS 追蹤,請完成下列步驟:
- 將追蹤規格 SASRas=all=enabled新增至 server.xml 檔,或將它新增至管理主控台內的「追蹤」設定。
- 通常,除了鑑別通訊協定執行時期之外,最好還追蹤授權安全執行時期。 如果要這麼做,請組合使用下列兩個追蹤規格: SASRas=all=enabled:com.ibm.ws.security.*=all=enabled。
- 對連線類型問題進行疑難排解時,可以同時追蹤 CSIv2 和 SAS 或 CSIv2 和 z/SAS 以及 ORB。 如果要這麼做,請使用下列三個追蹤規格: SASRas=all=enabled:com.ibm.ws.security.*=all=enabled:ORBRas=all=enabled。
- 除了新增這些追蹤規格之外,對於 ORB 追蹤,還需要設定一些系統內容。 如果要設定這些內容,請按一下 。 選取 ORB 追蹤 選項。 此選項會設定您必須在舊版中手動設定的兩個內容。 如需相關資訊,請參閱 Object Request Broker 服務設定主題。
配置 CSIv2或 SAS 追蹤設定
檢閱 CSIv2 或 SAS 鑑別通訊協定的追蹤有助於疑難排解困難問題時發生的狀況。 本節說明如何啟用 CSIv2 和 SAS 追蹤。
啟用用戶端 CSIv2 和 SAS 追蹤
若要在純用戶端上啟用 CSIv2 和 SAS 追蹤,需要採取下列步驟:
- 編輯 /WebSphere/AppServer/properties 目錄中的 TraceSettings.properties 檔案。
- 在此檔案中,將 traceFileName= 變更為指向您要在其中建立輸出檔的路徑。 請確定在每一個子目錄之間放置雙反斜線 (\\)。 例如:traceFileName=c:\\WebSphere\\AppServer\\logs\\sas_client.log
- 在此檔案中,新增追蹤規格字串: SASRas=all=enabled。 可以在個別行上新增任何其他追蹤字串。
- 從用戶端應用程式內指向此檔案。 在您啟動用戶端的 Java 指令行上,新增下列系統內容: -DtraceSettingsFile=TraceSettings.properties。附註: 請勿提供 TraceSettings.properties 檔案的完整路徑。 請確定 TraceSettings.properties 檔位於類別路徑中。
啟用用戶端 CSIv2 和 SAS 追蹤
若要在純用戶端上啟用 CSIv2 和 SAS 追蹤,需要採取下列步驟:
- 編輯 /WebSphere/AppServer/properties 目錄中的 TraceSettings.properties 檔案。 例如,編輯 profile_root/properties/TraceSettings.properties。
- 在此檔案中,將 traceFileName= 變更為指向您要在其中建立輸出檔的路徑。 例如, traceFileName=profile_root/logs/sas_client。
- n 這個檔案,新增追蹤規格字串: SASRas=all=enabled。 可以在個別行上新增任何其他追蹤字串。
- 從用戶端應用程式內指向此檔案。 在您啟動用戶端的 Java 指令行上,新增下列系統內容: -DtraceSettingsFile=TraceSettings.properties。附註: 請勿提供 TraceSettings.properties 檔案的完整路徑。 請確定 TraceSettings.properties 檔位於類別路徑中。
- 啟用伺服器端 CSIv2 和 SAS 追蹤
- 如果要在應用程式伺服器中啟用 SAS 追蹤,請完成下列步驟:
- 將追蹤規格 SASRas=all=enabled新增至 server.xml 檔,或將它新增至 WebConsole GUI 內的「追蹤」設定。
- 通常除了鑑別通訊協定執行時期之外,最好還追蹤授權安全執行時期。 如果要這麼做,請組合使用下列兩個追蹤規格: SASRas=all=enabled:com.ibm.ws.security.*=all=enabled。
- 對連線類型問題進行疑難排解時,可以同時追蹤 CSIv2 和 SAS 或 CSIv2 和 z/SAS 以及 ORB。 如果要這麼做,請使用下列三個追蹤規格: SASRas=all=enabled:com.ibm.ws.security.*=all=enabled:ORBRas=all=enabled。
- 除了新增這些追蹤規格之外,對於 ORB 追蹤,還需要設定一些系統內容。 移至 GUI 中的 ORB 設定,並新增下列兩個內容: com.ibm.CORBA.Debug=true 和 com.ibm.CORBA.CommTrace=true。
CSIv2 CORBA 次要程式碼
每當用戶端或伺服器上的安全碼內發生異常狀況時,最終異常狀況會變成 Common Object Request Broker Architecture (CORBA) 異常狀況。 發生的任何異常狀況都會內嵌在 CORBA 異常狀況中,因為安全服務會使用 CORBA 架構進行自己的程序間通訊。 CORBA 異常狀況是一般的,指出兩個元件之間的通訊有問題。 CORBA 次要碼更具體,並指出元件無法完成要求的根本原因。
下列顯示用戶端在執行安全相關要求 (例如鑑別) 之後可預期接收的 CORBA 次要碼。 它也包含出現次要程式碼的 CORBA 異常狀況類型。
下列異常狀況顯示 CORBA 異常狀況範例,其中次要程式碼是 49424300 ,且指出「鑑別失敗」。 一般而言,描述性訊息也會包含在異常狀況中,以協助疑難排解問題。 這裡的詳細訊息是: 針對使用者 jdoe 從 SecurityServer 呼叫 authenticateBasicAuthData 時捕捉到異常狀況。 原因: com.ibm.WebSphereSecurity.AuthenticationFailedException
指出使用者 jdoe的鑑別失敗。
異常狀況中的已完成欄位指出方法是否已完成。 若為 NO_PERMISSION ,絕不會呼叫訊息; 因此一律 completed: No。 在伺服器端捕捉到的其他異常狀況可能具有已完成狀態 可能
或 是
。
org.omg.CORBA.NO_PERMISSION: 在中捕捉到 WSSecurityContext異常狀況
WSSecurityContext.acceptSecContext () ,
原因: 主要碼 [0] 次要碼 [0] 訊息 [呼叫時捕捉到異常狀況
使用者 jdoe 來自 SecurityServer 的 authenticateBasicAuthData 。 原因:
com.ibm.WebSphereSecurity.AuthenticationFailedException] minor code: 49424300
已完成: 否
位於 com.ibm.ISecurityLocalObjectBaseL13Impl.PrincipalAuthFailReason。
map_auth_fail_to_minor_code (PrincipalAuthFailReason.java:83)
位於 com.ibm.ISecurityLocalObjectBaseL13Impl.CSIServerRI.receive_request
(CSIServerRI.java:1569)
at com.ibm.rmi.pi.InterceptorManager.iterateReceiveRequest
(InterceptorManager.java:739)
at com.ibm.CORBA.iiop.ServerDelegate.dispatch(ServerDelegate.java:398)
at com.ibm.rmi.iiop.ORB.process(ORB.java:313)
位於 com.ibm.CORBA.iiop.ORB.process(ORB.java:1581)
位於 com.ibm.rmi.iiop.GIOPConnection.doWork(GIOPConnection.java:1827)
at com.ibm.rmi.iiop.WorkUnitImpl.doWork(WorkUnitImpl.java:81)
at com.ibm.ejs.oa.pool.PooledThread.run(ThreadPool.java:91)
at com.ibm.ws.util.CachedThread.run(ThreadPool.java:149)
| 次要代碼名稱 | 次要碼值 (十六進位) | 異常狀況類型 (全部在 org.omg.CORBA . * 的套件中) | 次要碼說明 | 由獨立式用戶端執行重試 (當 authenticationRetry已啟用 = true 時) | 由充當用戶端的伺服器執行的重試 (當 authenticationRetry已啟用 = true 時) |
|---|---|---|---|---|---|
| AuthenticationFailed | 49424300 | NO_PERMISSION | 此代碼是一般鑑別失敗錯誤。 它不會提供使用者 ID 或密碼是否有效的任何詳細資料。 部分使用者登錄可以選擇使用此類型的錯誤碼,其他使用者可以選擇使用接下來三種更具體的類型。 | 是(Y) | 是(Y) |
| InterceptLocate異常狀況 | 494210B8 | 內部 | 這指出處理送入的尋找要求時發生問題。 | 否 | 否 |
| InvalidUserid | 49424301 | NO_PERMISSION | 當登錄傳回不正確的使用者 ID 時,會發生此程式碼。 | 是(Y) | 否 |
| InvalidPassword | 49424302 | NO_PERMISSION | 當登錄傳回不正確的密碼時,即會發生此程式碼。 | 是(Y) | 否 |
| InvalidSecurity認證 | 49424303 | NO_PERMISSION | 這是一般錯誤,指出認證因某些原因而不正確。 可能是未設定正確的屬性。 | 是,如果用戶端具有 BasicAuth 認證 (記號型認證一開始遭到拒絕)。 | 是(Y) |
| InvalidRealm | 49424304 | NO_PERMISSION | 當從用戶端收到的記號中的 REALM 不符合伺服器的現行網域範圍時,會發生此程式碼。 | 否 | 否 |
| ValidationFailed | 49424305 | NO_PERMISSION | 當記號從用戶端或伺服器傳送至目標伺服器,但記號格式或有效期限無效時,會發生驗證失敗。 | 是,如果用戶端具有 BasicAuth 認證 (記號型認證一開始遭到拒絕)。 | 是(Y) |
| CredentialToken過期 | 49424306 | NO_PERMISSION | 此程式碼更明確說明驗證失敗的原因。 在此情況下,記號具有絕對生命期限,且生命期限已過期。 因此,它不再是有效的記號,無法使用。 | 是,如果用戶端具有 BasicAuth 認證 (記號型認證一開始遭到拒絕)。 | 是(Y) |
| InvalidCredential記號 | 49424307 | NO_PERMISSION | 這更明確說明驗證失敗的原因。 在此情況下,無法解密記號,或無法讀取記號內的資料。 | 是,如果用戶端具有 BasicAuth 認證 (記號型認證一開始遭到拒絕)。 | 否 |
| SessionDoesNotExist | 49424308 | NO_PERMISSION | 這指出 CSIv2 階段作業不存在於伺服器上。 通常會自動重試,並順利建立新的階段作業。 | 是(Y) | 是(Y) |
| SessionConflicting證明 | 49424309 | NO_PERMISSION | 這指出伺服器上已存在符合用戶端所傳送之 context_id 的階段作業。 不過,用戶端針對此 EstablishContext 訊息提供的資訊不同於最初提供用來建立階段作業的資訊。 | 是(Y) | 是(Y) |
| SessionRejected | 4942430A | NO_PERMISSION | 這表示伺服器先前已拒絕用戶端所參照的階段作業。 | 是(Y) | 是(Y) |
| SecurityServerNotAvailable | 4942430B | NO_PERMISSION | 當伺服器無法聯絡本端或遠端安全伺服器以進行鑑別或驗證時,會發生此錯誤。 | 否 | 否 |
| InvalidIdentity記號 | 4942430C | NO_PERMISSION | 此錯誤指出當啟用「身分主張」時,無法從身分記號取得身分。 | 否 | 否 |
| IdentityServerNotTrusted | 4942430D | NO_PERMISSION | 這指出傳送端伺服器的伺服器 ID 不在目標伺服器的信任主體清單上。
|
否 | 否 |
| InvalidMessage | 4942430E | NO_PERMISSION | 這指出 CSIv2 訊息格式對接收端伺服器無效。 | 否 | 否 |
| MappingFailed | 4942430F | NO_PERMISSION | 這指出使用 RMI 入埠系統登入配置對映入埠主體時發生錯誤。 | 否 | 否 |
| RevokedSecurity名稱 | 49424310 | NO_PERMISSION | 這表示使用者 ID 已撤銷。 | 是(Y) | 否 |
| ExpiredPassword | 49424311 | NO_PERMISSION | 這表示密碼已過期。 | 是(Y) | 否 |
| AuthenticationNot支援 | 49421090 | NO_PERMISSION | 當機制不支援鑑別時,會發生此錯誤 (非常罕見)。 | 否 | 否 |
| InvalidSecurity機制 | 49421091 | NO_PERMISSION | 這是用來指出指定的安全機制不明。 | 否 | 否 |
| CredentialNot | 49421092 | NO_PERMISSION | 這指出認證在必要時無法使用。 | 否 | 否 |
| SecurityMechanismNotSupported | 49421093 | NO_PERMISSION | 當伺服器上未實作 CSIv2 記號中指定的安全機制時,會發生這個錯誤。 | 否 | 否 |
| 不支援 ValidationNot | 49421094 | NO_PERMISSION | 當機制不支援驗證 (例如 LocalOS) 時,會發生此錯誤。 不會發生此錯誤,因為 LocalOS 認證不是可轉遞的認證,因此,永不需要對此認證呼叫驗證。 | 否 | 否 |
| CredentialTokenNotSet | 49421095 | NO_PERMISSION | 這是用來指出認證內的記號是空值。 | 否 | 否 |
| InvalidEvidence | 49421096 | NO_PERMISSION | 此錯誤指出伺服器需要用戶端鑑別。 不過,來自用戶端的方法要求中沒有鑑別資訊。 | 否 | 否 |
| UserRegistryMethod_Protected | 49421098 | NO_PERMISSION | 此錯誤指出已嘗試從遠端存取受保護的 UserRegistry 方法。 | 否 | 否 |
| ServerConnection失敗 | 494210A0 | COMM_FAILURE | 當連線嘗試失敗時,會使用此錯誤。 | 是 (透過 ORB 重試) | 是 (透過 ORB 重試) |
| CorbaSystem異常狀況 | 494210B0 | 內部 | 此程式碼是系統程式碼中的一般 CORBA 特定異常狀況。 | 否 | 否 |
| JavaException | 494210B1 | 內部 | 這是一般錯誤,指出發生非預期的 Java 異常狀況。 | 否 | 否 |
| ValueIs空值 | 494210B2 | 內部 | 此代碼用來指出傳入的值或參數是空值。 | 否 | 否 |
| EffectivePolicyNotPresent | 494210B3 | 內部 | 這指出 CSIv2 的有效原則物件不存在。 此物件用來判定指定了哪些安全配置特性。 | 否 | 否 |
| NullPointer異常狀況 | 494210B4 | 內部 | 此程式碼用來指出在執行時期中捕捉到 NullPointer異常狀況。 | 否 | 否 |
| ErrorGettingClassInstance | 494210B5 | 內部 | 這指出動態載入類別時發生問題。 | 否 | 否 |
| MalFormed參數 | 494210B6 | 內部 | 這表示參數無效。 | 否 | 否 |
| DuplicateSecurityAttributeType | 494210B7 | 內部 | 這指出在 set_attributes 作業期間指定的認證屬性重複。 | 否 | 否 |
| MethodNot實作 | 494210C0 | 無實作 | 這指出未實作所呼叫的方法。 | 否 | 否 |
| GSSFormatError | 494210C5 | BAD_PARAM | 此程式碼指出「通用安全服務 (GSS)」編碼或解碼常式已建立異常狀況。 | 否 | 否 |
| TagComponentFormatError | 494210C6 | BAD_PARAM | 此代碼指出無法適當地讀取標籤元件。 | 否 | 否 |
| InvalidSecurityAttributeType | 494210C7 | BAD_PARAM | 此代碼指出在 set_attributes 作業期間指定的屬性類型不是有效的類型。 | 否 | 否 |
| SecurityConfig錯誤 | 494210CA | 起始設定 | 此代碼指出用戶端與伺服器配置之間存在問題。 | 否 | 否 |