보안을 사용 가능하게 한 후의 액세스 문제점
보안을 사용 가능하게 한 후 액세스 문제점이 발생하면 이 정보를 참조하십시오.
- 보안을 사용 가능하게 한 후 관리 콘솔의 전부 또는 일부에 액세스하거나 wsadmin 도구를 사용할 수 없습니다.
- 보안을 사용 가능하게 한 후 웹 페이지에 액세스할 수 없습니다.
- 웹 페이지에 액세스 중 인증 오류 발생
- 웹 페이지에 액세스 중 인증 오류 발생
- 보안을 사용 가능하게 한 후 클라이언트가 엔터프라이즈 Bean에 액세스할 수 없습니다.
- 보안 엔터프라이즈 Bean에 액세스할 때 클라이언트 프로그램에 프롬프트가 표시되지 않습니다.
- 보안을 사용 가능하게 한 후 애플리케이션 서버, 노드 관리자 또는 노드를 중지시킬 수 없습니다.
AccessControlException 예외가 SystemOut.log에 보고됩니다.
- 싱글 사인온(SSO)을 사용 가능하게 한 후 관리 콘솔에 로그온할 수 없습니다.
- SECJ0306E: No received or invocation credential exists on the thread.
- 연합 저장소에 처음으로 연결하는 경우에 Name NotFoundException 오류가 발생합니다.
보안 관련 문제점 진단 및
해결에 관한 일반적인 팁은 보안 컴포넌트 문제점 해결 팁 주제를 참조하십시오.
사용자의
문제점과 유사한 문제점이 없거나 제공된 정보로 사용자의 문제점을 해결할 수 없는 경우
IBM의 문제점 해결 도움말을 참조하십시오.
보안을 사용 가능하게 한 후 관리 콘솔의 전부 또는 일부에 액세스하거나 wsadmin 도구를 사용할 수 없습니다.
관리 콘솔에 액세스하거나 특정 오브젝트를 보고 업데이트할 수 없는 경우, 관련 오류 메시지의 관리 콘솔 페이지를 호스트하는 애플리케이션 서버의 SystemOut 로그의 내용을 참조하십시오.
관리 콘솔에 액세스하거나 특정 오브젝트를 보고 업데이트할 수 없는 경우, 관련 오류 메시지의 관리 콘솔 페이지를 호스트하는 애플리케이션 서버의 로그를 참조하십시오.
참고: 다음 두 항목을 완료하려면 관리 콘솔을 사용해야 합니다. 관리 콘솔에 액세스하는 데 문제점이 있는 경우 보안을 해제하고 관리 콘솔을 다시 시작해야 합니다. 보안을 해제하려면 시스템 명령 프롬프트에 다음 명령을 입력하십시오.
시스템 명령 프롬프트가 다시 나타나면 다음을 입력하십시오.wsadmin.sh -conntype NONE
보안이 해제된 후 배치 관리자를 다시 시작하십시오.securityoff
- 관리 태스크에 대해 권한 부여된 ID가 없습니다. 이 문제점은 다음과 같은 오류로 표시됩니다.
- [8/2/02 10:36:49:722 CDT] 4365c0d9 RoleBasedAuth A CWSCJ0305A: 자원 서버 및 모듈 서버에서 getProcessType 메소드를 호출하는 동안 보안 이름 MyServer/myUserId, accessId MyServer/S-1-5-21-882015564-4266526380-2569651501-1005의 역할 기반 권한을 확인할 수 없습니다.
- 예외 메시지: "CWWMN0022E: 서버 MBean의 getProcessType 조작에 대한 액세스 거부"
- wsadmin -username j2ee -password j2ee: CWWAX7246E: 명령을 실행할 때 인증 실패로 인해 "BIRKT20"을 호스트하는 "SOAP" 연결을 설정할 수 없습니다. 사용자 및 비밀번호가 명령행 또는 특성 파일에서 올바른지 확인하십시오.
- 신뢰 애플리케이션 기능이 사용 가능한지 확인하십시오. WebSphere Application Server에 FACILITY RACF 클래스 및 BBO.TRUSTEDAPPS.<cell short name>.<cluster short name> 프로파일에 대한 READ SAF 액세스 권한이 있는지 확인하여 신뢰 애플리케이션을 사용할 수 있습니다.
![[z/OS]](../images/ngzos.gif)
보안을 사용 가능하게 한 후 웹 페이지에 액세스할 수 없습니다.
- 인증 오류 - WebSphere Application Server 보안이 사용자 ID 또는 프로세스를
식별할 수 없습니다. 인증 오류의 증상은 다음을 포함합니다.Netscape 브라우저:
- 인증에 실패했습니다. 재시도하시겠습니까? 메시지가 로그인 시도 후 표시됩니다.
- 로그인을 재시도할 횟수를 허용하고 재시도를 중지하기 위해 취소를 누르면 오류 401 메시지가 표시됩니다.
- 일반 브라우저 메시지가 다음과 같이 표시됩니다. 오류 401: Basic realm='Default Realm'.
Internet Explorer 브라우저:- 로그인 시도 후 로그인 프롬프트가 다시 표시됩니다.
- 로그인 재시도는 세 번 허용됩니다.
- 세 번 재시도에도 실패하면 오류 401 메시지가 표시됩니다.
- 권한 오류 - 보안 기능이 요청 사용자 또는 프로세스가 보안 자원에 액세스할 수 있는 권한이
없는 것으로 식별했습니다. 권한 오류의 증상은 다음을 포함합니다.
- Netscape 브라우저: "오류 403: AuthorizationFailed" 메시지가 표시됩니다.
- Internet Explorer:
- "이 페이지를 볼 수 있는 권한이 없습니다." 메시지가 표시됩니다.
- "HTTP 403 금지" 오류도 표시됩니다.
- SSL 오류 - WebSphere Application Server 보안은 내부적으로 SSL(Secure Sockets Layer) 기술을 사용하여
자체 통신을 보안 설정하고 암호화하므로 내부 SSL 설정 구성이 올바르지 않은 경우 문제점이 발생할 수 있습니다. 사용자의
웹 애플리케이션 또는 엔터프라이즈 Bean 클라이언트 트래픽에 대해서도 SSL 암호화를 사용할 수 있으나, 잘못 구성되는 경우
WebSphere Application Server 보안 사용 가능 여부에 관계없이 문제점이 발생할 수 있습니다.
- 다음과 같은 문장이 포함된 오류 메시지는 SSL 관련 문제점을 표시하는 경우가 많습니다. 오류: 초기 컨텍스트를 가져올 수 없거나 시작 컨텍스트를 참조할 수 없어 종료합니다. 그런 다음 javax.net.ssl.SSLHandshakeException이 표시됩니다.
보안을 사용 가능하게 한 후 클라이언트가 엔터프라이즈 Bean에 액세스할 수 없습니다.
- 자원에 대한 액세스 보안 및 액세스 부여 단계를 검토하십시오.
서버의 JVM 로그에서 엔터프라이즈 Bean 액세스 및 보안과 관련된 오류를 찾아보십시오. 메시지 테이블에서 오류를 찾으십시오.
서버의 로그에서 엔터프라이즈 Bean 액세스 및 보안과 관련된 오류를 찾아보십시오. 메시지 테이블에서 오류를 찾으십시오.
필수 역할 역할 중 어느 것도 부여되지 않은 상태에서 자원 securityName:/UNAUTHENTICATED;accessId:UNAUTHENTICATEDAuthorization을 호출하는 동안 /UNAUTHENTICATED에 대한 권한 부여 실패와 유사한 오류:- 보호되지 않은 서블릿 또는 JSP(JavaServer Pages) 파일의 보안 설정된
엔터프라이즈 Bean 액세스. 보호되지 않은 서블릿에 액세스할 때 사용자에게 로그인이 프롬프트되지 않으므로
서블릿은 인증되지 않은 것으로 실행합니다. 이 서블릿이 보호 설정된
엔터프라이즈 Bean을 호출할 경우 실패가 발생합니다.
이러한 문제점을 해결하려면 보호 설정된 엔터프라이즈 Bean에 액세스하는 서블릿을 보안하십시오. 서블릿에 대한 runAs 특성이 엔터프라이즈 Bean에 액세스할 수 있는 ID로 설정되었는지 확인하십시오.
- 인증되지 않은 Java
클라이언트 프로그램이 보호 설정된 엔터프라이즈 Bean 자원에 액세스하려고 합니다. 클라이언트 프로그램에 의해 사용되는 sas.client.props
특성 파일에서 읽는 파일에 securityEnabled 플래그가 true로
설정되지 않은 경우에 이 상황이 발생할 수 있습니다.
이러한 문제점을 해결하려면, 클라이언트측의 sas.client.props 파일에 securityEnabled 플래그가 true로 설정되었는지 확인하십시오.
필수 역할 중 어느 것도 부여되지 않은 상태에서 securityName:/username;accessId:xxxxxx 자원을 호출하는 중 valid_user에 대한 권한 부여 실패와 유사한 오류는 클라이언트가 보안 엔터프라이즈 Bean 자원에 액세스했지만 제공된 사용자 ID에 해당 엔터프라이즈 Bean의 필수 역할이 지정되지 않았음을 나타냅니다.- 액세스되는 엔터프라이즈 Bean 자원의 필수 역할을 확인하십시오. 웹 자원의 배치 디스크립터에서 엔터프라이즈 Bean 자원의 필수 역할을 보십시오.
- 권한 테이블을 검사하고 사용자 또는 사용자가 속한 그룹에 필수 역할 중 하나가 지정되어 있는지 확인하십시오. 관리 콘솔을 사용하여 엔터프라이즈 Bean 자원을 포함하는 애플리케이션의 권한 테이블을 볼 수 있습니다.
- 보호되지 않은 서블릿 또는 JSP(JavaServer Pages) 파일의 보안 설정된
엔터프라이즈 Bean 액세스. 보호되지 않은 서블릿에 액세스할 때 사용자에게 로그인이 프롬프트되지 않으므로
서블릿은 인증되지 않은 것으로 실행합니다. 이 서블릿이 보호 설정된
엔터프라이즈 Bean을 호출할 경우 실패가 발생합니다.
로컬 OS 및 SAF(System Authorization Facility) 권한을 사용 중인 경우, SAF EJBROLE 설정을 확인하십시오. 특히, 다음을 확인하십시오.
- EJBROLE 클래스가 활성화되었는지
- SAF에 역할이 정의되었는지
- 사용자 ID가 역할에 허용되는지
- 허용 조작 이후 클래스가 새로 고침되었는지
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- 먼저, 예외에서 WSSecurityContext.acceptSecContext(), reason: 뒤에 표시된 텍스트를 확인하십시오. 일반적으로, 이 텍스트는 추가 분석 없이 장애에 대해 설명합니다.
- 이 조치에서
문제점이 설명되지 않는 경우, CORBA(Common Object Request Broker Architecture)
부 코드를 보십시오. 코드는 보안 컴포넌트 문제점 해결 참조사항이라는
조항에 나열되어 있습니다.예를 들어, 다음 예외는 49424300의 CORBA 부 코드를 표시합니다. CORBA 부 코드 테이블에서 이 오류에 대한 설명을 읽어 보십시오.
이 경우, 클라이언트 프로그램에서 제공하는 사용자 ID 또는 비밀번호가 유효하지는 않습니다.authentication failed error
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. Reason: com.ibm.WebSphereSecurity.AuthenticationFailedException] minor code: 49424300 completed: No at com.ibm.ISecurityLocalObjectBaseL13Impl.PrincipalAuthFailReason.map_auth_fail_to_minor_code (PrincipalAuthFailReason.java:83)
CWWSA1477W: SECURITY CLIENT/SERVER CONFIGURATION MISMATCH
오류가 임베드된 CORBA INITIALIZE 예외를 클라이언트 프로그램이 서버로부터 수신합니다.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
수신된
예외: org.omg.CORBA.INITIALIZE:
CWWSA1477W: SECURITY CLIENT/SERVER CONFIG MISMATCH:
The client security configuration (sas.client.props or outbound settings in
administrative console) does not support the server security configuration for
the following reasons:
ERROR 1: CWWSA0607E: The client requires SSL Confidentiality but the server does not
support it.
ERROR 2: CWWSA0610E: The server requires SSL Integrity but the client does not
support it.
ERROR 3: CWWSA0612E: The client requires client (e.g., userid/password or token),
but the server does not support it.
minor code: 0
completed: No at
com.ibm.ISecurityLocalObjectBaseL13Impl.SecurityConnectionInterceptor.getConnectionKey
(SecurityConnectionInterceptor.java:1770)
일반적으로 문제점을 해결하려면 클라이언트 또는 서버의
보안 구성을 변경해야 합니다. 포함된 구성 설정값을 판별하려면,
CWWSA 오류 메시지 다음에 나오는 텍스트를 살펴보십시오.
자세한 설명 및 지시사항을 보려면 Information Center 탐색의 참조 보기를 선택한
후 탐색 트리의 메시지를 펼쳐서 메시지 참조를 찾아보십시오.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- ERROR 1에서, 클라이언트에는 SSL 기밀성이 필요하지만 서버가 SSL 기밀성을 지원하지 않습니다. 두 가지 방법으로 이러한 불일치를 해결할 수 있습니다. SSL 기밀성을 지원하도록 서버를 업데이트하거나 이것이 필요 없도록 클라이언트를 업데이트하십시오.
- 오류 2에서, 서버에는 SSL 무결성이 필요하지만 클라이언트가 SSL 무결성을 지원하지 않습니다. 두 가지 방법으로 이러한 불일치를 해결할 수 있습니다. SSL 무결성을 지원하도록 서버를 업데이트하거나 이것이 필요 없도록 클라이언트를 업데이트하십시오.
- 오류 3에서, 클라이언트에는 사용자 ID 및 비밀번호를 통한 클라이언트 인증이 필요하지만, 서버가 이러한 유형의 클라이언트 인증을 지원하지 않습니다. 클라이언트 또는 서버가 구성을 변경해야 합니다. 클라이언트 구성을 변경하려면 단일 클라이언트에 대한 SAS.CLIENT.PROPS 파일을 수정하거나 보안 관리 콘솔에서 서버에 대한 아웃바운드 구성을 변경하십시오. 대상 서버에 대한 구성을 변경하려면 보안 관리 콘솔에서 인바운드 구성을 수정하십시오.
마찬가지로 클라이언트 요청 서비스를 시도 중인 서버에 표시되는
org.omg.CORBA.INITIALIZE: JSAS0477W: SECURITY CLIENT/SERVER CONFIG MISMATCH:와 같은
예외는 클라이언트와 서버 간의 보안 구성 불일치를 표시합니다. 문제점 해결 단계는 이전에 설명된 JSAS1477W 예외와 동일합니다.
보안 엔터프라이즈 Bean에 액세스할 때 클라이언트 프로그램에 프롬프트가 표시되지 않습니다.
보안이 사용 가능하고 엔터프라이즈 Bean이 보안 설정된 것으로 보이는 경우에도, 클라이언트에 프롬프트 없이 원격 메소드가 실행될 수도 있습니다. 원격 메소드가 보안 설정된 경우, 권한 장애가 발생합니다. 그렇지 않으면 인증되지 않은 사용자로 메소드를 실행하십시오.
- 통신하고 있는 서버가 보안을 사용하지 않았을 수 있습니다. 서버 보안이 사용 가능한지 확인하려면 WebSphere Application Server 관리자를 검사하십시오. 관리 콘솔의 보안 섹션 내에서 보안 설정에 액세스하십시오.
- 클라이언트의 sas.client.props 파일에서 보안이 사용 가능하지 않습니다. sas.client.props 파일을 편집하여 com.ibm.CORBA.securityEnabled 특성을 true로 설정하십시오.
- 클라이언트에 ConfigURL이 지정되지 않았습니다. Java 클라이언트 명령행에서 -D 매개변수를 사용하여 com.ibm.CORBA.ConfigURL 특성을 지정했는지 확인하십시오.
- 지정된 ConfigURL에 유효하지 않은 URL 구문이 있거나 찾을 수 없는 위치로
지정된 sas.client.props. com.ibm.CORBA.ConfigURL 특성이 유효한지
확인하십시오. URL 형식 규칙에 대한 설명은 Java
문서를 확인하십시오. 또한
파일이 지정된 경로에 있는지 확인하십시오.
유효한 특성 예제는 C:/WebSphere/AppServer/properties/sas.client.props입니다.
클라이언트 구성이 메시지 레이어 클라이언트 인증(사용자 ID 및 비밀번호)을 지원하지 않습니다. sas.client.props 파일에 다음 특성 중 하나가 true로 설정되었는지 확인하십시오.
- com.ibm.CSI.performClientAuthenticationSupported=true
- com.ibm.CSI.performClientAuthenticationRequired=true
서버 구성이 메시지 레이어 클라이언트 인증을 지원하지 않으며, 이 인증은 사용자 ID 및 비밀번호로 구성되어 있습니다. WebSphere Application Server 관리자를 검사하여 사용자 ID 및 비밀번호 인증이 관리 콘솔 관리 도구의 시스템 관리 섹션 내에 있는 서버 인바운드 구성에 대해 지정되었는지 확인하십시오.
보안을 사용 가능하게 한 후 애플리케이션 서버, 노드 관리자 또는 노드를 중지시킬 수 없습니다.
명령행 유틸리티를 사용하여 WebSphere Application Server 프로세스를 중지시키는 경우, 인증 및 권한 정보를 제공하려면 보안을 사용 가능하게 한 후 추가 매개변수를 적용하십시오.
./stopServer
-help 명령을 사용하여 사용할 매개변수를 표시하십시오.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
- ./stopServer serverName -username name -password password
- ./stopNode -username name -password password
- ./stopManager -username name -password password
Windows 서비스 패널 또는
net stop 명령을 사용하여 WebSphere Application Server 프로세스를 중지시키고 서비스는 중지시킬 수 없는 경우,
추가 중지 인수를 사용하여 기존 Application Server 서비스를 업데이트하십시오.
서비스를 갱신하기 전에 태스크 관리자로부터 서버 프로세스를 종료해야 합니다.
WASService
명령 항목의 "기존 Application Server 서비스 업데이트" 예제에 설명된 대로
-stopArgs 및 -encodeParams 매개변수를 사용하여 서비스를
업데이트하십시오.
싱글 사인온(SSO)을 사용 가능하게 한 후 관리 콘솔에 로그온할 수 없습니다.
이 문제점은 싱글 사인온(SSO)이 사용 가능한데 사용자가 서버의 축약 이름(예: http://myserver:port_number/ibm/console)을 사용하여 관리 콘솔에 액세스하려고 할 때 발생합니다. 서버가 사용자 ID와 비밀번호를 승인하지만, 관리 콘솔 대신 로그온 페이지를 리턴합니다.
이 문제점을 정정하려면 서버의 완전한 호스트 이름을 사용하십시오(예: http://myserver.mynetwork.mycompany.com:9060/ibm/console).
SECJ0306E: No received or invocation credential exists on the thread.
구성 중에 셀에 있는 하나 이상의 노드가 동기화되지 않은 경우 다음과 같은 메시지가 표시됩니다.SECJ0306E: No received or invocation credential exists on the thread. The Role based
authorization check will not have an accessId of the caller to check. The parameters
are: access check method getServerConfig on resource FileTransferServer and module
FileTransferServer. The stack trace is java.lang.Exception: Invocation and received
credentials are both null.
각 노드가 동기화된 후 배치 관리자를 다시 시작하십시오.
연합 저장소에 처음으로 연결하는 경우에 Name NotFoundException 오류가 발생합니다.
서버가 java:comp/env/ds/wimDS 이름을
간접적으로 찾아서 연합 저장소에 처음으로 EJB 연결을 하는 경우, SystemOut.log
파일에 다음 오류 메시지가 표시됩니다.
서버가 java:comp/env/ds/wimDS 이름을 간접적으로 찾아서 연합 저장소에
처음으로 EJB 연결을 하는 경우, 적절한 작업 로그의 출력에 다음 오류 메시지가 표시됩니다.
NMSV0612W: A NameNotFound Exception
![[z/OS]](../images/ngzos.gif)
NameNotFoundException 오류는 ibm-ejb-jar-bnd.xmi 파일의 jdbc/wimDS JNDI(Java Naming and Directory Interface) 이름에 대한 참조 바인딩 정의로 인해 발생합니다. 이 경고 메시지를 무시할 수 있습니다. wimDS 데이터베이스 저장소가 구성되면 메시자가 표시되지 않습니다.

그러나 Java EE 5 이상 모듈은 Java EE 5 이전 파일이 포함되어 있고 .xmi 파일 이름 확장자가 사용된 애플리케이션에 있을 수 있습니다.
ibm-webservices-ext.xmi, ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi, ibm-webservicesclient-ext.xmi, ibm-portlet-ext.xmi 파일은 .xmi 파일 확장자를 계속 사용합니다.
sptcfg