보안 컴포넌트 문제점 해결 팁
이 문서는 기본 자원 및 WebSphere® Application Server의 보안 관련 문제점 진단 단계를 설명합니다.
검토할 로그 파일 및 검색할 내용
- 검색할 내용 및 검토할 SDSF 사용.
- 보안 문제점 분석 및 해결을 위한 보안 관련 문제점 해결을 위한 일반적인 접근 방법
- 추적 보안의 사용 시기 및 방법.
컴포넌트 추적 설정(CTRACE)은 추적 활동에 유용한 주제입니다.
CSIv2 CORBA 부 코드의 개요 및 테이블.
- 보안 사용 가능 이후의
오류 및 액세스 문제점
보안을 사용 가능하게 한 후 성능이 저하되었습니다. 제한 없는 정책 파일의 사용에 대한 자세한 정보는 글로벌 보안 사용 가능의 내용을 참조하십시오.
- SSL 사용 가능화 이후의 오류 또는 SSL 관련 오류 메시지
보안 구성 및 사용 가능화 시도 중 오류
이러한 단계로도 문제점이 전혀 해결되지 않을 경우, 문제점 진단 및 수정: 학습 자원 항목에 있는 링크를 사용하여 문제점을 식별하고 문서화했는지 확인하십시오.
사용자의
문제점과 유사한 문제점이 없거나 제공된 정보로 사용자의 문제점을 해결할 수 없는 경우
추가 지원을 받으려면 IBM의 문제점 해결 도움말을 참조하십시오.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
![[z/OS]](../images/ngzos.gif)
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
로그 파일
SASRas A CWWSA0001I: Security configuration initialized.
SASRas A CWWSA0002I: Authentication protocol: CSIV2/IBM
SASRas A CWWSA0003I: Authentication mechanism: SWAM
SASRas A CWWSA0004I: Principal name: MYHOSTNAME/aServerID
SASRas A CWWSA0005I: SecurityCurrent registered.
SASRas A CWWSA0006I: Security connection interceptor initialized.
SASRas A CWWSA0007I: Client request interceptor registered.
SASRas A CWWSA0008I: Server request interceptor registered.
SASRas A CWWSA0009I: IOR interceptor registered.
NameServerImp I CWNMS0720I: Do Security service listener registration.
SecurityCompo A CWSCJ0242A: Security service is starting
UserRegistryI A CWSCJ0136I: Custom Registry:com.ibm.ws.security.registry.nt.
NTLocalDomainRegistryImpl has been initialized
SecurityCompo A CWSCJ0202A: Admin application initialized successfully
SecurityCompo A CWSCJ0203A: Naming application initialized successfully
SecurityCompo A CWSCJ0204A: Rolebased authorizer initialized successfully
SecurityCompo A CWSCJ0205A: Security Admin mBean registered successfully
SecurityCompo A CWSCJ0243A: Security service started successfully
SecurityCompo A CWSCJ0210A: Security enabled true
SASRas A CWWSA0001I: Security configuration initialized.
SASRas A CWWSA0002I: Authentication protocol: CSIV2/IBM
SASRas A CWWSA0003I: Authentication mechanism: SWAM
SASRas A CWWSA0004I: Principal name: MYHOSTNAME/aServerID
SASRas A CWWSA0005I: SecurityCurrent registered.
SASRas A CWWSA0006I: Security connection interceptor initialized.
SASRas A CWWSA0007I: Client request interceptor registered.
SASRas A CWWSA0008I: Server request interceptor registered.
SASRas A CWWSA0009I: IOR interceptor registered.
NameServerImp I CWNMS0720I: Do Security service listener registration.
SecurityCompo A CWSCJ0242A: Security service is starting
UserRegistryI A CWSCJ0136I: Custom Registry:com.ibm.ws.security.
registry.nt.NTLocalDomainRegistryImpl has been initialized
Authenticatio E CWSCJ4001E: Login failed for badID/<null>
javax.security.auth.login.LoginException: authentication failed: bad user/password
SASRas A CWWSA0001I: Security configuration initialized.
SASRas A CWWSA0002I: Authentication protocol: CSIV2/IBM
SASRas A CWWSA0003I: Authentication mechanism: LTPA
SASRas A CWWSA0004I: Principal name: MYHOSTNAME/anID
SASRas A CWWSA0005I: SecurityCurrent registered.
SASRas A CWWSA0006I: Security connection interceptor initialized.
SASRas A CWWSA0007I: Client request interceptor registered.
SASRas A CWWSA0008I: Server request interceptor registered.
SASRas A CWWSA0009I: IOR interceptor registered.
NameServerImp I CWNMS0720I: Do Security service listener registration.
SecurityCompo A CWSCJ0242A: Security service is starting
UserRegistryI A CWSCJ0136I: Custom Registry:com.ibm.ws.security.registry.nt.
NTLocalDomainRegistryImpl has been initialized
SecurityServe E CWSCJ0237E: One or more vital LTPAServerObject configuration
attributes are null or not available. The attributes and values are password :
LTPA password does exist, expiration time 30, private key <null>, public key <null>,
and shared key <null>.
SASRas A CWWSA0001I: Security configuration initialized.
SASRas A CWWSA0002I: Authentication protocol: CSIV2/IBM
SASRas A CWWSA0003I: Authentication mechanism: SWAM
SASRas A CWWSA0004I: Principal name: MYHOSTNAME/aServerId
SASRas A CWWSA0005I: SecurityCurrent registered.
SASRas A CWWSA0006I: Security connection interceptor initialized.
SASRas A CWWSA0007I: Client request interceptor registered.
SASRas A CWWSA0008I: Server request interceptor registered.
SASRas A CWWSA0009I: IOR interceptor registered.
SASRas E CWWSA0026E: [SecurityTaggedComponentAssistorImpl.register]
Exception connecting object to the ORB. Check the SSL configuration to ensure
that the SSL keyStore and trustStore properties are set properly. If the problem
persists, contact support for assistance. org.omg.CORBA.OBJ_ADAPTER:
ORB_CONNECT_ERROR (5) - couldn't get Server Subcontract minor code:
4942FB8F completed: No
SDSF 사용
보안 컴포넌트의 문제를 해결하는 경우 SDSF(System Display and Search Facility)를 사용하여 현재 액세스하려고 하는 자원을 호스트하는 서버에 대한 로그를 찾아보십시오. 다음 메시지 샘플은 보안 서비스가 정상적으로 시작된 서버에서 볼 수 있도록 도와줍니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
+BBOM0001I com_ibm_authMechanisms_type_OID: No OID for this mechanism.
+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: NOT SET.
+BBOM0001I security_zOS_domainName: NOT SET.
+BBOM0001I security_zOS_domainType: 0.
+BBOM0001I security_zSAS_ssl_repertoire: 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
*** Message beginning with BBOO0222I apply to Java within ***
*** WebSphere Application Server Security ***
+BBOO0222I: SECJ6004I: Security Auditing is disabled.
+BBOO0222I: SECJ0215I: Successfully set JAAS login provider 631
configuration class to com.ibm.ws.security.auth.login.Configuration.
+BBOO0222I: SECJ0136I: Custom 632
Registry:com.ibm.ws.security.registry.zOS.SAFRegistryImpl has been initialized
+BBOO0222I: SECJ0157I: Loaded Vendor AuthorizationTable: 633
com.ibm.ws.security.core.SAFAuthorizationTableImpl
![[z/OS]](../images/ngzos.gif)
BBOM0001I security_zOS_domainName: NOT SET.
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: Security Auditing is disabled.
BBOO0222I: SECJ0215I: Successfully set JAAS login provider
configuration class to com.ibm.ws.security.auth.login.Configuration.
BBOO0222I: JSAS0001I: Security configuration initialized.
BBOO0222I: JSAS0003I: Authentication mechanism: LTPA
BBOO0222I: JSAS0004I: Principal name: DEFAULT/CBSYMSR1
BBOO0222I: JSAS0006I: Security connection interceptor initialized.
BBOO0222I: JSAS0009I: IOR interceptor registered.
BBOO0222I: SECJ0136I: Custom
Registry:com.ibm.ws.security.registry.zOS.SAFRegistryImpl has been
initialized
BBOO0222I: SECJ6214I: SAF authorization is enabled.
BBOO0222I: ACWA0002I: WorkArea service not enabled on server1.
BBOO0222I: SECJ6216I: SAF delegation is enabled.
BBOO0222I: SECJ6216I: SAF delegation is enabled.
BBOO0222I: SECJ6216I: SAF delegation is enabled.
BBOO0222I: SRVE0169I: Loading Web Module: WIM.
BBOO0222I: CHFW0019I: The Transport Channel Service has started chain
WCInboundAdmin.
BBOO0222I: CHFW0019I: The Transport Channel Service has started chain
WCInboundDefault.
BBOO0222I: CHFW0019I: The Transport Channel Service has started chain
WCInboundAdminSecure.
BBOO0222I: CHFW0019I: The Transport Channel Service has started chain
WCInboundDefaultSecure.
BBOO0222I: WSVR0001I: Server SERVANT PROCESS server1 open for
e-business
BBOO0020I INITIALIZATION COMPLETE FOR WEBSPHERE FOR Z/OS SERVANT
PROCESS BBOS001.
./bborjtr.cpp+953 ... BBOO0222I: SECJ0231I: The Security component's FFDC Diagnostic Module com.ibm.ws.security.core.Sec
urityDM registered
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 Security is disabled.
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 configuration information successfully pushed to login provider
class.
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: Security service initialization completed successfully
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 opened incident stream file /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 closed incident stream file /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: Security service started successfully
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에 생성된 다음과 같은 메시지의 순서는 Application Server의 정상적인 코드 초기화를 나타냅니다. 이 순서는 구성에 따라 다르지만 메시지는 다음과 유사합니다.
SASRas A CWWSA0001I: Security configuration initialized. SASRas A CWWSA0002I: Authentication protocol: CSIV2/IBM SASRas A CWWSA0003I: Authentication mechanism: SWAM SASRas A CWWSA0004I: Principal name: BIRKT20/pbirk SASRas A CWWSA0005I: SecurityCurrent registered. SASRas A CWWSA0006I: Security connection interceptor initialized. SASRas A CWWSA0007I: Client request interceptor registered. SASRas A CWWSA0008I: Server request interceptor registered. SASRas A CWWSA0009I: IOR interceptor registered. NameServerImp I CWNMS0720I: Do Security service listener registration. SecurityCompo A CWSCJ0242A: Security service is starting UserRegistryI A CWSCJ0136I: Custom Registry:com.ibm.ws.security.registry.nt. NTLocalDomainRegistryImpl has been initialized SecurityCompo A CWSCJ0202A: Admin application initialized successfully SecurityCompo A CWSCJ0203A: Naming application initialized successfully SecurityCompo A CWSCJ0204A: Rolebased authorizer initialized successfully SecurityCompo A CWSCJ0205A: Security Admin mBean registered successfully SecurityCompo A CWSCJ0243A: Security service started successfully 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 Category: INFO ExtendedMessage: BBOO0222I: SECJ0231I: The Security component's FFDC Diagnostic Module 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) Description: Log Boss/390 Error from filename: ./bborjtr.cpp at line: 932 error message: BBOO0222I: SECJ0231I: The Security component's FFDC Diagnostic Module com.ibm.ws.security.core.Securit d successfully: 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: Security Auditing is disabled. 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 Category: INFO ExtendedMessage: BBOO0222I: SECJ0309I: Java 2 Security is disabled. Trace: 2013/05/06 17:27:41.282 01 t=8E96E0 c=UNK key=P8 (0000000A) Description: Log Boss/390 Error from filename: ./bborjtr.cpp at line: 932 error message: BBOO0222I: SECJ0309I: Java 2 Security is disabled. 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: Successfully set JAAS login provider configuration class to com.ibm.ws.securit Configuration. 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 Category: INFO ExtendedMessage: BBOO0222I: SECJ0212I: WCCM JAAS configuration information successfully pushed to login provider clas Trace: 2013/05/06 17:27:42.254 01 t=8E96E0 c=UNK key=P8 (0000000A) Description: Log Boss/390 Error from filename: ./bborjtr.cpp at line: 932 error message: BBOO0222I: SECJ0212I: WCCM JAAS configuration information successfully pushed to login provider class. 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 Category: INFO ExtendedMessage: BBOO0222I: SECJ0240I: Security service initialization completed successfully Trace: 2013/05/06 17:27:42.306 01 t=8E96E0 c=UNK key=P8 (0000000A) Description: Log Boss/390 Error from filename: ./bborjtr.cpp at line: 932 error message: BBOO0222I: SECJ0240I: Security service initialization completed successfully 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 Category: INFO ExtendedMessage: BBOO0222I: OBPL0007I: Object Pool Manager service is disabled. 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: Custom Registry:com.ibm.ws.security.registry.zOS.SAFRegistryImpl has been init 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: Loaded Vendor 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 Category: INFO ExtendedMessage: BBOO0222I: SECJ0243I: Security service started successfully Trace: 2013/05/06 17:27:56.481 01 t=8E96E0 c=UNK key=P8 (0000000A) Description: Log Boss/390 Error from filename: ./bborjtr.cpp at line: 932 error message: BBOO0222I: SECJ0243I: Security service started successfully 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 Category: INFO ExtendedMessage: BBOO0222I: SECJ0210I: Security enabled true Trace: 2013/05/06 17:27:56.483 01 t=8E96E0 c=UNK key=P8 (0000000A) Description: Log Boss/390 Error from filename: ./bborjtr.cpp at line: 932 error message: BBOO0222I: SECJ0210I: Security enabled true
- 시스템 로그 파일에서 스택 추적 또는 예외가 인쇄됩니까?
- 단일 스택 추적은 문제점에 관한 많은 부분을 알려줍니다. 실패한 코드를 초기화한 코드는 무엇입니까? 실패한 컴포넌트는 무엇입니까? 실패가 실제로 발생한 클래스는 어느 클래스입니까? 때때로 스택 추적만으로도 문제점을 해결할 수 있으며 근본 원인을 정확히 집어낼 수 있습니다. 그렇지 않은 경우, 스택 추적은 단서를 제공할 뿐이며 실제로는 잘못된 안내일 수도 있습니다. 지원에서 스택 추적을 분석할 경우, 문제점이 무엇인지 분명하지 않으면 추가 추적을 요청할 수 있습니다. 보안과 관련된 것으로 보이지만 스택 추적이나 문제점 설명에서 해결책을 판별할 수 없는 경우, 관련된 모든 프로세스에서 다음과 같은 추적 스펙 수집을 수행하도록 요청을 받을 수도 있습니다. SASRas=all=enabled:com.ibm.ws.security.*=all=enabled.
- 분배된 보안 문제점입니까 아니면 로컬 보안 문제점입니까?
- 로컬 문제점의 경우, 즉 관련된 코드가 원격 메소드 호출에서 생성되지 않은 경우, 문제점 해결은 단일 프로세스로 분리됩니다. 다른 컴포넌트 중에서도 오브젝트 요청 브로커(ORB)의 작동이 둘 사이에 서로 다르기 때문에 문제점이 로컬인지 또는 분배된 시기를 아는 것이 중요합니다. 원격 메소드 호출이 발생하면 완전히 다른 보안 코드 경로가 입력됩니다.
- 문제점이 둘 이상의 서버와 관련된 것을 알 경우, 문제점 해결
기법이 바뀝니다. 추적이 클라이언트 및 서버측 문제점을
표시할 수 있도록 관련된 모든 서버를 동시에
추적해야 합니다. 모든 시스템의 시간소인이 두 개의 서로 다른
프로세스로부터 요청 및 응답 쌍을 찾을 수 있을 만큼 가능한
근접하게 일치하는지 확인하십시오. SASRas=all=enabled:com.ibm.ws.security.*=all=enabled
추적 스펙을 사용하여 SAS(Secure Authentication Services) 또는 z/SAS 및 보안 추적을 모두 사용 가능하게 하십시오.
추적 사용 가능에 대한 자세한 정보는 추적 및 로깅 구성 항목을 참조하십시오.
추적 사용 가능에 대한 자세한 정보는 추적에 대한 작업을 참조하십시오.
- 문제점이 인증 또는 권한에 관련됩니까?
- 대부분의 보안 문제점은 이러한 두 가지 카테고리 중 하나에 해당합니다. 인증은 호출자가 누구인지를 판별하는 프로세스입니다. 권한 부여는 요청된 메소드를 호출자에게 호출하는 데 적절한 권한이 있는지 검증하는 프로세스입니다. 인증에 실패할 경우, 이 장애는 일반적으로 인증 프로토콜, 인증 메커니즘 또는 사용자 레지스트리와 관련됩니다. 권한부여에 실패할 경우, 일반적으로 어셈블리 및 전개로부터의 애플리케이션 바인딩이나 메소드에 액세스 중인 호출자의 ID 및 메소드에서 요구하는 역할과 관련됩니다.
- 이것이 웹 또는 EJB 요청입니까?
웹 요청의 코드 경로는 EJB(Enterprise JavaBeans) 요청과 완전히 다릅니다. EJB 요청의 경우와는 다른 보안 기능이 웹 요청에 대해 존재하여 해결할 지식의 완전히 다른 본문이 필요합니다. 예를 들어, LPTA(Lightweight Third-Party Authentication) 인증 메커니즘을 사용할 때 싱글 사인온(SSO) 기능이 웹 요청에는 사용 가능하지만 EJB 요청에는 사용할 수 없습니다. 웹 요청에는 프로토콜 차이로 인하여 EJB 요청에서는 필요하지 않은 HTTP 헤더 정보가 포함됩니다. 또한, 웹 컨테이너나 서블릿 엔진은 전체 프로세스에 포함됩니다. 이들 컴포넌트 중 일부가 문제점에 관련될 수 있지만 요청의 유형 및 장애가 발생한 위치에 따라 문제 해결 시 모두 고려해야 합니다.
보안 EJB 요청은 RMI/IIOP 프로토콜을 통해 이동하므로 주로 ORB 및 이름 지정 컴포넌트와 관련됩니다. 또한 워크로드 관리자(WLM)가 사용 가능할 경우, 코드에서 다른 작동 변경사항이 발견될 수 있습니다. 이러한 환경에서 보안이 제대로 작동하려면 이들 컴포넌트가 모두 밀접하게 상호작용합니다. 때때로 해당 분야의 문제점을 해결하려면 이들 컴포넌트 중 일부 또는 모두의 추적이 필요합니다.
시작할 추적 스펙은 SASRas=all=enabled:com.ibm.ws.security.*=all=enabled입니다. ORB 추적은 또한 SAS/보안 추적이 문제점을 정확히 집어내지 않을 때 매우 유용합니다.
보안 EJB 요청이 제어기에서 하위(servant)로 전달됩니다. 대개 제어기는 웹 요청을 무시합니다. 따라서 zSAS 또는 CSIv2(Common Security Interoperability Version 2) 보안 계층이 EJB 요청을 먼저 처리하고 인증합니다. 권한 부여는 하위(servant)에 의해 수행됩니다. 권한 부여 장애가 발생하는 경우, 문제점을 진단하려면 zSAS 유형 추적 레벨을 작동해야 합니다. 기타 문제점은 WebSphere Application Server 컴포넌트 추적(CTRACE) 기능을 사용하여 진단할 수 있습니다.
- 문제점이 SSL(Secure Socket Layer)에 관련된 것 같습니까?
SSL은 완전히 고유한 별개의 보안 계층입니다. SSL 문제점 해결은 일반적으로 인증 및 권한 부여 문제점 해결과는 다르므로 여러 가지 고려사항이 있습니다. 일반적으로 SSL 문제점은 구성이 어려울 수 있으므로 최초의 설정 문제점입니다. 각 클라이언트는 서버의 서명자 인증을 포함해야 합니다. 상호 인증 시, 각각의 서버는 클라이언트의 서명자 인증서를 포함해야 합니다. 또한 프로토콜 차이(SSLv3 대 TLS(Transport Layer Security)) 및 서버 다시 시작 이전 포트를 반영하는 구식 IOR(Interoperable Object Reference)(서버로부터의 IOR)에 관련된 리스너 포트 문제점이 있을 수 있습니다.
z/OS에는 두 가지 SSL 변형이 사용됩니다. z/OS에서 SSL 문제점의 원인을 판별하려면 사용 중인 프로토콜을 알아야 합니다.
- 시스템 SSL은 IIOP(Internet Inter-ORB Protocol) 및 HTTPS 프로토콜에서 사용됩니다.
- JSSE(Java Secure Socket Extension)는 기타 모든 프로토콜(예: SOAP)에 사용됩니다.
- 시스템의 SSL 요청은 제어기에서 처리되며, z/SAS 및 CSIv2 보안에서 사용됩니다.
- SJSSE는 주로 하위(servant)에서 사용하지만 JSSE가 제어기에서 사용하는 경우도 있습니다.
SSL 문제점의 경우, 때때로 SSL 핸드쉐이크에서 무엇이 발생했는지 판별하기 위해 SSL 추적이 필요합니다. SSL 핸드쉐이크는 클라이언트가 서버에 대한 소켓을 열 때 발생하는 프로세스입니다. 키 교환, 암호 교환 등에 문제가 발생하면 핸드쉐이크에 실패하며, 소켓이 유효하지 않게 됩니다. JSSE 추적(WebSphere Application Server에서 사용되는 SSL 구현)에는 다음과 같은 단계가 포함됩니다.- 클라이언트 및 서버 프로세스에서 다음 시스템 특성을 설정하십시오. -Djavax.net.debug=true. 서버의 경우, 시스템 특성을 JVM(Java Virtual Machine) 설정 페이지의 일반 JVM 인수 특성에 추가하십시오.
ORB 추적도 켜십시오.
- 문제점을 다시 작성하십시오.
두 프로세스의 SystemOut.log가 둘 다 JSSE 추적을 포함합니다. 다음 예와 비슷한 추적을 찾을 수 있습니다.
SSLConnection: install <com.ibm.sslite.e@3ae78375> >> handleHandshakeV2 <com.ibm.sslite.e@3ae78375> >> handshakeV2 type = 1 >> clientHello: SSLv2. SSL client version: 3.0 ... ... ... JSSEContext: handleSession[Socket[addr=null,port=0,localport=0]] << sendServerHello. SSL version: 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 >> finished. << 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 is : /WebSphere/V8R50M0/AppServer/etc/DummyServerTrustFile.jks TrustManagerFactoryImpl: trustStore type is : JKS TrustManagerFactoryImpl: init truststore JSSEContext: handleConnection[Socket [addr=boss0106.plex1.l2.ibm.com/9.38.48.108,port=2142,localport=8878]] KeyManagerFactoryImpl: keyStore is : /WebSphere/V8R5M0/AppServer/etc/DummyServerKeyFile.jks KeyManagerFactoryImpl: keyStore type is : JKS KeyManagerFactoryImpl: init keystore KeyManagerFactoryImpl: init keystore 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: confirmPeerCertificate [Socket[addr=BOSSXXXX.PLEX1.L2.IBM.COM/9.38.48.108,port=8879, localport=2145]] X509TrustManagerImpl: checkServerTrusted X509TrustManagerImpl: Certificate [ [ Version: V3 Subject: CN=jserver, OU=SWG, O=IBM, C=US Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 Key: IBMJCE RSA Public Key: modulus: 10094996692239509074796828756118539107568369566313889955538950668 6622953008589748001058216362638201577071902071311277365773252660799 128781182947273802312699983556527878615792292244995317112436562491 489904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 Validity: [From: Fri Jun 21 20:08:18 GMT 2013, To: Thu Mar 17 20:08:18 GMT 2014] Issuer: CN=jserver, OU=SWG, O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] Algorithm: [MD5withRSA] Signature: 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: Certificate [ [ Version: V3 Subject: CN=jserver, OU=SWG, O=IBM, C=US Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 Key: IBMJCE RSA Public Key: modulus: 1009499669223950907479682875611853910756836956631388995553895066866 22953008589748001058216362638201577071902071311277365773252660799 1287811829472738023126999835565278786157922922449953171124365624914 89904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 Validity: [From: Fri Jun 21 20:08:18 GMT 2013, To: Thu Mar 17 20:08:18 GMT 2015] Issuer: CN=jserver, OU=SWG, O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] Algorithm: [MD5withRSA] Signature: 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: checkServerTrusted X509TrustManagerImpl: Certificate [ [ Version: V3 Subject: CN=WAS z/OS Deployment Manager, O=IBM Signature Algorithm: SHA1withRSA, OID = 1.2.840.113549.1.1.5 0 Key: IBMJCE RSA Public Key: modulus: 12840948267119651469312486548020957441946413494498370439558603901582589 8755033448419534105183133064366466828741516428176579440511007 6258795528749232737808897160958348495006972731464152299032614592135114 19361539962555997136085140591098259345625853617389396340664766 649957749527841107121590352429348634287031501 public exponent: 65537 0 Validity: [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 Extensions: 3 [1]: ObjectId: 2.16.840.1.113730.1.13 Criticality=false Extension unknown: DER encoded OCTET string = 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 76 65 72 20 66 ecurity Server f 0030: 6F 72 20 7A 2F 4F 53 20 28 52 41 43 46 29 or z/OS (RACF) -[2]: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ 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 AuthorityKeyIdentifier [ 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] Algorithm: [SHA1withRSA] Signature: 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: Certificate [ [ Version: V3 Subject: CN=WAS CertAuth, C=US Signature Algorithm: SHA1withRSA, OID = 1.2.840.113549.1.1.5 0 Key: IBMJCE RSA Public Key: modulus: 1167408593733331602218385578183389496484587418638676352829560040529918 40558681208199977833401609895748222369066230329785148883251144 2382911186804921983976695395381692334250582278359056431484427844566504 41491799952592864895242987037929408453455627552772317382077015 828713585220212502839546496071839496308430393 public exponent: 65537 0 Validity: [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 Extensions: 4 [1]: ObjectId: 2.16.840.1.113730.1.13 Criticality=false Extension unknown: DER encoded OCTET string = 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 76 65 72 20 66 ecurity Server f 0030: 6F 72 20 7A 2F 4F 53 20 28 52 41 43 46 29 or z/OS (RACF) -[2]: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ 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] Algorithm: [SHA1withRSA] Signature: 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: checkServerTrusted X509TrustManagerImpl: Certificate [ [ Version: V3 Subject: CN=jserver, OU=SWG, O=IBM, C=US Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 Key: IBMJCE RSA Public Key: modulus: 100949966922395090747968287561185391075683695663138899555389506686622953 008589748001058216362638201577071902071311277365773252660799 1287811829472738023126999835565278786157922922449953171124365624914 89904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 Validity: [From: Fri Jun 21 20:08:18 GMT 2013, To: Thu Mar 17 20:08:18 GMT 2015] Issuer: CN=jserver, OU=SWG, O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] Algorithm: [MD5withRSA] Signature: 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: Certificate [ [ Version: V3 Subject: CN=jserver, OU=SWG, O=IBM, C=US Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4 0 Key: IBMJCE RSA Public Key: modulus: 100949966922395090747968287561185391075683695663138899555389506 686622953008589748001058216362638201577071902071311277365773252660799 12878118294727380231269998355652787861579229224499531711243656249 1489904381884265119355037731265408654007388863303101746314438337601 264540735679944205391693242921331551342247891 public exponent: 65537 0 Validity: [From: Fri Jun 21 20:08:18 GMT 2013, To: Thu Mar 17 20:08:18 GMT 2015] Issuer: CN=jserver, OU=SWG, O=IBM, C=US SerialNumber: [ 3d1387b2 ] 0] Algorithm: [MD5withRSA] Signature: 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(Virtual Member Manager) 저장소를 사용하여 추적할 경우
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- 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 추적 옵션을 선택하십시오. 이 옵션은 이전 릴리스에서는 수동으로 설정해야 했던 두 개의 특성을 설정합니다. 자세한 정보는 오브젝트 요청 브로커 서비스 설정 주제를 참조하십시오. 를 클릭하십시오.
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.
- 이 파일에서 추적 스펙 문자열 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의 두 특성을 추가하십시오.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
![[z/OS]](../images/ngzos.gif)
CSIv2 CORBA 부 코드
클라이언트에서든 서버에서든 보안 코드 내부에서 결과적으로 발생한 예외는 CORBA(Common Object Request Broker Architecture) 예외가 됩니다. 따라서 발생하는 모든 예외는 CORBA 예외에 의해 임베드됩니다. 이는 CORBA 아키텍처가 보안 서비스에서 자체 프로세스 간 통신에 사용되기 때문입니다. CORBA 예외는 일반적이며 두 컴포넌트 간의 통신 문제점을 나타냅니다. CORBA 부 코드는 좀더 세부적이며 컴포넌트가 요청을 완료할 수 없는 근본 이유를 나타냅니다.
다음은 인증과 같은 보안 관련 요청을 실행한 후 클라이언트가 수신할 수 있는 CORBA 부 코드를 보여줍니다. 또한 부 코드가 표시하는 CORBA 예외 유형도 포함되어 있습니다.
다음 예외는 부 코드가 49424300인 CORBA 예외의 예를 보여주며 인증 장애를 표시합니다. 일반적으로 문제점 해결을 도와주는 설명 메시지도 예외에 포함되어 있습니다. 여기에서, 상세한 메시지는 다음과 같습니다. "Exception caught invoking authenticateBasicAuthData from SecurityServer for user jdoe. Reason: com.ibm.WebSphereSecurity.AuthenticationFailedException" 이것은 jdoe 사용자에 대해 인증이 실패했음을 표시합니다.
예외에서 completed 필드는 메소드의 완료 여부를 나타냅니다. NO_PERMISSION의 경우 메시지는 절대 호출되지 않으므로 항상 completed:No입니다. 서버측에서 발견되는 기타 예외는 "Maybe" 또는 "Yes"의 완료 상태를 가질 수 있습니다.
org.omg.CORBA.NO_PERMISSION: Caught WSSecurityContextException in
WSSecurityContext.acceptSecContext(),
reason: Major Code[0] Minor Code[0] Message[Exception caught invoking
authenticateBasicAuthData from SecurityServer for user jdoe. 이유:
com.ibm.WebSphereSecurity.AuthenticationFailedException] minor code: 49424300
completed: No
at com.ibm.ISecurityLocalObjectBaseL13Impl.PrincipalAuthFailReason.
map_auth_fail_to_minor_code(PrincipalAuthFailReason.java:83)
at 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)
at com.ibm.CORBA.iiop.ORB.process(ORB.java:1581)
at 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)
부 코드 이름 | 부 코드 값(16진) | 예외 유형(모두 org.omg.CORBA.*의 패키지에 있음) | 부 코드 설명 | 독립형 클라이언트가 수행하는 재시도(authenticationRetryEnabled = true일 때) | 클라이언트로 작용하는 서버가 수행하는 재시도(authenticationRetryEnabled = true일 때) |
---|---|---|---|---|---|
AuthenticationFailed | 49424300 | NO_PERMISSION | 이 코드는 일반적인 인증 실패 오류입니다. 사용자 ID 또는 비밀번호의 유효성 여부에 대한 세부사항은 제공하지 않습니다. 일부 사용자 레지스트리는 이러한 유형의 오류 코드를 사용하도록 선택할 수 있고 나머지는 좀더 세부적인 다음 세 가지 유형을 사용하도록 선택할 수 있습니다. | 예 | 예 |
InterceptLocateException | 494210B8 | INTERNAL | 이것은 수신 찾기 요청을 처리할 때의 문제점을 나타냅니다. | 아니오 | 아니오 |
InvalidUserid | 49424301 | NO_PERMISSION | 이 코드는 레지스트리가 잘못된 사용자 ID를 리턴할 때 발생합니다. | 예 | 아니오 |
InvalidPassword | 49424302 | NO_PERMISSION | 이 코드는 레지스트리가 잘못된 비밀번호를 리턴할 때 발생합니다. | 예 | 아니오 |
InvalidSecurityCredentials | 49424303 | NO_PERMISSION | 이것은 어떤 이유로 신임 정보가 잘못된 것임을 나타내는 일반 오류입니다. 올바른 속성이 설정되지 않았을 수 있습니다. | 클라이언트가 BasicAuth 신임을 가진 경우 예(토큰 기반 신임은 첫 번째 위치에서 거부됨). | 예 |
InvalidRealm | 49424304 | NO_PERMISSION | 이 코드는 클라이언트에서 수신된 토큰의 영역이 서버의 현재 영역과 일치하지 않을 때 발생합니다. | 아니오 | 아니오 |
ValidationFailed | 49424305 | NO_PERMISSION | 토큰이 클라이언트나 서버에서 대상 서버로 전송되었지만 토큰 형식이나 만기가 유효하지 않은 경우, 유효성 검증 장애가 발생합니다. | 클라이언트가 BasicAuth 신임을 가진 경우 예(토큰 기반 신임은 첫 번째 위치에서 거부됨). | 예 |
CredentialTokenExpired | 49424306 | NO_PERMISSION | 이 코드는 유효성 검증 실패 이유가 좀더 세부적입니다. 이 경우 토큰은 절대 수명을 갖는데, 이 수명이 만기되었습니다. 따라서 더 이상 유효한 토큰이 아니므로 사용할 수 없습니다. | 클라이언트가 BasicAuth 신임을 가진 경우 예(토큰 기반 신임은 첫 번째 위치에서 거부됨). | 예 |
InvalidCredentialToken | 49424307 | NO_PERMISSION | 이것은 유효성 검증 실패 이유가 좀더 세부적입니다. 이 경우 토큰을 해독할 수 없거나 토큰 내부의 데이터를 읽을 수 없습니다. | 클라이언트가 BasicAuth 신임을 가진 경우 예(토큰 기반 신임은 첫 번째 위치에서 거부됨). | 아니오 |
SessionDoesNotExist | 49424308 | NO_PERMISSION | 이것은 CSIv2 세션이 서버에 존재하지 않음을 나타냅니다. 일반적으로 재시도가 자동으로 일어나며 정상적으로 새 세션을 작성합니다. | 예 | 예 |
SessionConflictingEvidence | 49424309 | NO_PERMISSION | 클라이언트가 전송한 context_id와 일치하는 서버에 세션이 이미 존재한다는 것을 나타냅니다. 그러나 이 EstablishContext 메시지에 대해 클라이언트가 제공한 정보가 세션을 설정할 때 처음으로 제공한 정보와 다릅니다. | 예 | 예 |
SessionRejected | 4942430A | NO_PERMISSION | 클라이언트가 참조한 세션이 이전에 서버가 거부한 것임을 나타냅니다. | 예 | 예 |
SecurityServerNotAvailable | 4942430B | NO_PERMISSION | 이 오류는 서버가 인증 또는 유효성 검증을 위해 로컬 또는 원격 보안 서버에 접속할 수 없을 때 발생합니다. | 아니오 | 아니오 |
InvalidIdentityToken | 4942430C | NO_PERMISSION | 이 오류는 ID 어설션이 사용으로 설정될 때 ID 토큰에서 ID를 확보할 수 없음을 나타냅니다. | 아니오 | 아니오 |
IdentityServerNotTrusted | 4942430D | NO_PERMISSION | 이것은 전송 서버의 서버 ID가 대상 서버의
신뢰 프린시펄 목록에 없음을 나타냅니다.
|
아니오 | 아니오 |
InvalidMessage | 4942430E | NO_PERMISSION | CSIv2 메시지 형식이 수신 서버에 대해 유효하지 않음을 나타냅니다. | 아니오 | 아니오 |
MappingFailed | 4942430F | NO_PERMISSION | 이는 RMI 인바운드 시스템 로그인 구성을 사용하여 인바운드 주제를 맵핑하는 동안 오류가 발생함을 표시합니다. | 아니오 | 아니오 |
RevokedSecurityName | 49424310 | NO_PERMISSION | 사용자 ID가 취소됨을 표시합니다. | 예 | 아니오 |
ExpiredPassword | 49424311 | NO_PERMISSION | 이것은 비밀번호가 만기됨을 표시합니다. | 예 | 아니오 |
AuthenticationNotSupported | 49421090 | NO_PERMISSION | 이 오류는 메커니즘이 인증을 지원하지 않을 때 발생합니다(거의 없음). | 아니오 | 아니오 |
InvalidSecurityMechanism | 49421091 | NO_PERMISSION | 이것은 지정된 보안 메커니즘을 알 수 없음을 표시하는 데 사용됩니다. | 아니오 | 아니오 |
CredentialNotAvailable | 49421092 | NO_PERMISSION | 이것은 신임이 필요하지만 사용할 수 없음을 나타냅니다. | 아니오 | 아니오 |
SecurityMechanismNotSupported | 49421093 | NO_PERMISSION | 이 오류는 CSIv2 토큰에 지정된 보안 메커니즘이 서버에 구현되어 있지 않을 때 발생합니다. | 아니오 | 아니오 |
ValidationNotSupported | 49421094 | NO_PERMISSION | 이 오류는 메커니즘이 유효성 검증을 지원하지 않을 때 발생합니다(예: LocalOS). LocalOS 신임 정보가 전달 가능한 신임 정보가 아니어서 유효성 검증이 이 신임 정보에서 호출될 필요가 없으므로 이 오류는 발생하지 않습니다. | 아니오 | 아니오 |
CredentialTokenNotSet | 49421095 | NO_PERMISSION | 이것은 신임 정보 내부의 토큰이 널임을 표시하는 데 사용됩니다. | 아니오 | 아니오 |
InvalidEvidence | 49421096 | NO_PERMISSION | 이 오류는 서버에서 클라이언트 인증이 필수임을 표시합니다. 그러나 인증 정보가 클라이언트로부터의 메소드 요청에는 없습니다. | 아니오 | 아니오 |
UserRegistryMethod_Protected | 49421098 | NO_PERMISSION | 이 오류는 보호된 UserRegistry 메소드에 원격으로 액세스하려고 시도했음을 표시합니다. | 아니오 | 아니오 |
ServerConnectionFailed | 494210A0 | COMM_FAILURE | 이 오류는 연결 시도에 실패할 때 사용됩니다. | 예(ORB 재시도를 통해) | 예(ORB 재시도를 통해) |
CorbaSystemException | 494210B0 | INTERNAL | 이 코드는 시스템 코드에서 일반 CORBA 특정 예외입니다. | 아니오 | 아니오 |
JavaException | 494210B1 | INTERNAL | 이것은 예기치 않은 Java 예외가 발생했음을 나타내는 일반 오류입니다. | 아니오 | 아니오 |
ValueIsNull | 494210B2 | INTERNAL | 이 코드는 전달된 값 또는 매개변수가 널임을 표시하는 데 사용됩니다. | 아니오 | 아니오 |
EffectivePolicyNotPresent | 494210B3 | INTERNAL | 이것은 CSIv2에 대해 효과적인 정책 오브젝트가 존재하지 않음을 나타냅니다. 이 오브젝트는 지정된 보안 구성 기능 내용을 판별하는 데 사용됩니다. | 아니오 | 아니오 |
NullPointerException | 494210B4 | INTERNAL | 이 코드는 런타임에서 NullPointerException이 발견되었음을 표시하는 데 사용됩니다. | 아니오 | 아니오 |
ErrorGettingClassInstance | 494210B5 | INTERNAL | 이것은 클래스를 동적으로 로드할 때의 문제점을 나타냅니다. | 아니오 | 아니오 |
MalFormedParameters | 494210B6 | INTERNAL | 이것은 매개변수가 올바르지 않음을 나타냅니다. | 아니오 | 아니오 |
DuplicateSecurityAttributeType | 494210B7 | INTERNAL | 이것은 set_attributes 조작 중에 지정되는 중복 신임 정보 속성을 나타냅니다. | 아니오 | 아니오 |
MethodNotImplemented | 494210C0 | NO_IMPLEMENT | 이것은 호출된 메소드가 구현되지 않음을 나타냅니다. | 아니오 | 아니오 |
GSSFormatError | 494210C5 | BAD_PARAM | 이 코드는 GSS(Generic Security Services) 인코딩 또는 디코딩 루틴에서 예외가 작성되었음을 나타냅니다. | 아니오 | 아니오 |
TagComponentFormatError | 494210C6 | BAD_PARAM | 이 코드는 태그 컴포넌트를 제대로 읽을 수 없음을 나타냅니다. | 아니오 | 아니오 |
InvalidSecurityAttributeType | 494210C7 | BAD_PARAM | 이 코드는 set_attributes 조작 중에 지정된 속성 유형이 유효하지 않은 유형임을 나타냅니다. | 아니오 | 아니오 |
SecurityConfigError | 494210CA | INITIALIZE | 이 코드는 클라이언트 및 서버 구성 간에 문제점이 있음을 나타냅니다. | 아니오 | 아니오 |
알려진 문제점 및 해결책에 대해 IBM Support에서 현재 사용 가능한 정보는 IBM Support 페이지를 참조하십시오.
IBM Support에는 이 문제점을 해결하는 데 필요한 정보 수집 시간을 줄일 수 있는 문서가 있습니다. PMR을 열어 보기 전에 IBM 지원 페이지를 참조하십시오.