보안을 위한 싱글 사인온 구성 문제점 해결 팁

WebSphere® Application Server와 Domino® 서버 사이에 싱글 사인온(SSO)을 구성할 때 여러 공통 문제점이 발생할 수 있습니다. 그러한 문제점에는 Domino Web SSO 구성 저장 실패, 보호된 자원에 액세스 시 인증 실패 및 보호된 자원에 액세스 시 SSO 실패 등이 있습니다. 이러한 오류 상황을 정정하고 SSO를 복원하기 위해 몇 가지 조치를 취할 수 있습니다.

  • Domino 웹 SSO 구성 문서 저장 실패

    클라이언트는 SSO Domino 서버에 참가하려면 Domino 서버 문서를 찾아야 합니다. 웹 SSO 구성 문서는 사용자가 지정하는 서버에 대해 암호화됩니다. 클라이언트 위치 레코드로 표시되는 홈 서버는 참가 서버가 상주하는 Domino 도메인에 있는 서버를 가리켜야 합니다.이 포인터는 검색에서 서버의 공개 키를 찾을 수 있도록 보장합니다.

    하나 이상의 참가 Domino 서버를 찾을 수 없음을 나타내는 메시지를 수신하는 경우 해당 서버는 웹 SSO 구성 문서를 복호화하거나 SSO를 수행할 수 없습니다.

    웹 SSO 구성 문서가 저장되면 상태 표시줄이 문서에 나열된 서버, 작성자 및 관리자를 찾아서 문서 암호화에 사용되는 공개 키의 수를 표시합니다.

  • Domino HTTP 서버 시작 시 Domino 서버 콘솔이 웹 SSO 구성 문서를 로드하는 데 실패

    SSO 구성 중에 서버 문서는 세션 인증 필드에서 다중 서버에 대해 구성됩니다. Domino HTTP 서버는 시작 시 웹 SSO 구성 문서를 찾아 로드하려고 시도합니다. 유효한 문서를 찾고 복호화한 경우에 Domino 서버 콘솔은 다음 정보를 보고합니다. HTTP: 성공적으로 웹 SSO 구성을 로드하였습니다.

    서버가 웹 SSO 구성 문서를 로드할 수 없는 경우 SSO가 작동하지 않습니다. 이 경우 서버는 다음 메시지를 보고합니다. HTTP: 웹 SSO 구성을 로드하는 중에 오류가 발생했습니다. 단일 서버 세션 인증으로 되돌립니다.

    Domino 디렉토리의 웹 구성 보기 및 $WebSSOConfigs 숨겨진 보기에 한 개의 웹 SSO 구성 문서만 있는지 확인하십시오. 둘 이상의 문서를 작성할 수 없지만 복제 중 추가 문서를 삽입할 수 있습니다.

    하나의 웹 SSO 구성 문서만 확인할 수 있는 경우 다른 조건도 고려해 보십시오. 서버 문서의 공개 키가 ID 파일의 공개 키와 일치하지 않는 경우 위의 오류 메시지와 같은 오류 메시지가 표시될 수 있습니다. 이 경우, 웹 SSO 구성 문서를 복호화하기 위한 시도고 실패하고 오류 메시지가 생성됩니다.

    이 상황은 ID 파일이 여러 번 작성되었지만 서버 문서가 올바르게 업데이트되지 않은 경우에 발생할 수 있습니다. 일반적으로 오류 메시지는 Domino 서버 콘솔에 표시되며 공개 키가 서버 ID와 일치하지 않음을 명시합니다. 이 상황이 발생할 경우 SSO는 작동하지 않습니다. 서버가 해당 개인 키를 소유하지 않은 공개 키로 문서가 암호화되기 때문입니다.

    키 불일치 문제점을 해결하려면 다음을 수행하십시오.
    1. 서버 ID 파일에서 공개 키를 복사하여 서버 문서에 붙여넣으십시오.
    2. 웹 SSO 구성 문서를 다시 작성하십시오.
  • 보호된 자원에 액세스 시 인증에 실패합니다.

    웹 사용자에게 사용자 ID 및 비밀번호 입력을 요구하는 프롬프트가 반복적으로 표시되면 SSO가 작동하지 않는 것입니다. Domino 또는 WebSphere Application Server 보안 서버는 LDAP(Lightweight Directory Access Protocol) 서버로 사용자를 인증할 수 없기 때문입니다. 다음 가능성을 확인하십시오.

    • Domino 서버 머신에서 LDAP 서버에 액세스할 수 있는지 확인하십시오. TCP/IP ping 유틸리티를 사용하여 TCP/IP 연결성을 확인하고 호스트 머신이 실행 중인지 확인하십시오.
    • LDAP 사용자가 LDAP 디렉토리에서 정의되는지 확인하십시오. idsldapsearch 유틸리티를 사용하여 사용자 ID가 존재하고 비밀번호가 올바른지 확인하십시오. 예를 들어, 단일 행으로 입력하여 다음 명령을 실행할 수 있습니다.

      [AIX Solaris HP-UX Linux Windows][IBM i]OS/400® Qshell, UNIX 쉘 또는 Windows DOS 프롬프트를 사용할 수 있습니다.

      % ldapsearch -D "cn=John Doe, ou=Rochester, o=IBM, c=US" -w mypassword
      -h myhost.mycompany.com -p 389 -b "ou=Rochester, o=IBM, c=US" (objectclass=*)
      퍼센트 문자(%)는 프롬프트를 표시하고 명령의 일부가 아닙니다. 디렉토리 항목의 목록이 예상됩니다. 다음 목록에는 가능한 오류 조건 및 원인이 있습니다.
      • 해당 오브젝트가 없음: 이 오류는 -D 옵션 뒤에 지정되어 사용자의 식별 이름(DB) 값으로 참조되는 디렉토리 항목 또는 -b 옵션 뒤에 지정되는 기본 DN 값이 존재하지 않음을 나타냅니다.
      • 유효하지 않은 신임 정보: 이 오류는 비밀번호가 유효하지 않음을 나타냅니다.
      • LDAP 서버에 접속할 수 없음: 이 오류는 서버에 대해 지정된 호스트 이름 또는 포트가 유효하지 않거나 LDAP 서버가 실행되지 않음을 나타냅니다.
      • 비어 있는 목록은 -b 옵션으로 지정되는 기본 디렉토리에 디렉토리 항목이 전혀 없음을 의미합니다.
    • 식별 이름 대신 사용자의 축약 이름 또는 사용자 ID를 사용하는 경우 디렉토리 항목이 축약 이름으로 구성되는지 확인하십시오. Domino 디렉토리의 경우 개인의 축약 이름/사용자 ID 필드 문서를 확인하십시오. 다른 LDAP 디렉토리의 경우 디렉토리 항목의 사용자 ID 특성을 확인하십시오.
    • Domino 디렉토리 외의 LDAP 디렉토리를 사용할 때 Domino 인증이 실패하는 경우 디렉토리 지원 데이터베이스의 디렉토리 지원 문서에서 LDAP 문서의 구성 설정을 확인하십시오. 또한 서버 문서가 올바른 디렉토리 지원 문서를 참조하는지도 확인하십시오. 디렉토리 지원 문서에서 지정되는 다음 LDAP 값은 WebSphere Application Server 관리 도메인에서 사용자 레지스트리에 대해 지정된 값과 일치해야 합니다.
      • 도메인 이름
      • LDAP 호스트 이름
      • LDAP 포트
      • 기본 DN
      또한 디렉토리 지원 문서에서 정의되는 규칙은 사용자의 디렉토리 항목을 포함하는 디렉토리의 기본 식별 이름(DN)을 참조해야 합니다.

      서버 notes.ini 파일에 다음 행을 추가하여 LDAP 서버에 대한 Domino 서버 요청을 추적할 수 있습니다.

      webauth_verbose_trace=1
      Domino 서버를 다시 시작하면 웹 사용자가 Domino 서버에 인증을 시도할 때 추적 메시지가 Domino 서버 콘솔에 표시됩니다.

  • 보호된 자원에 액세스 시 권한 부여에 실패합니다.

    인증이 성공적으로 완료된 후 권한 부여 오류 메시지가 표시되면 보안이 올바르게 구성되지 않은 것입니다. 다음 가능성을 확인하십시오.

    • Domino 데이터베이스의 경우 사용자가 데이터베이스에 대한 액세스 제어 설정에서 정의되는지 확인하십시오. 사용자의 DN을 올바르게 지정하는 방법은 Domino 관리 문서의 내용을 참조하십시오. 예를 들어, DN cn=John Doe, ou=Rochester, o=IBM, c=US의 경우 액세스 제어 목록에서 값은 John Doe/Rochester/IBM/US로 설정되어야 합니다.
    • WebSphere Application Server에 의해 보호되는 자원의 경우 보안 권한이 올바르게 설정되어 있는지 확인하십시오.
      • 선택한 그룹에 대해 권한을 부여하는 경우 자원에 액세스를 시도하는 사용자가 해당 그룹의 멤버인지 확인하십시오. 예를 들어, 디렉토리에 컨텐츠를 표시하기 위해 다음 웹 사이트를 사용하여 그룹의 멤버를 확인할 수 있습니다. Ldap://myhost.mycompany.com:389/ou=Rochester, o=IBM, c=US??sub
      • 권한이 설정된 이후로 WebSphere Application Server 관리 도메인에서 LDAP 구성 정보(호스트, 포트 및 기본 DN)를 변경한 경우 기존 권한이 유효하지 않을 수 있으며 재작성이 필요할 수 있습니다.

  • 보호된 자원에 액세스 시 SSO에 실패합니다.

    웹 사용자에게 각 자원에 대한 인증 프롬프트가 표시되면 SSO가 올바르게 구성되지 않은 것입니다. 다음 가능성을 확인하십시오.

    1. 둘 다 같은 LDAP 디렉토리를 사용하도록 WebSphere Application Server 및 Domino 서버를 구성하십시오. SSO에 사용되는 HTTP 쿠키는 사용자의 전체 DN(예: cn=John Doe, ou=Rochester, o=IBM, c=US) 및 도메인 이름 서비스(DNS) 도메인을 저장합니다.
    2. Domino 디렉토리가 사용되는 경우 계층 구조 이름으로 웹 사용자를 정의하십시오. 예를 들어, John Doe/Rochester/IBM/US 형식의 이름을 첫 번째 값으로 포함시키려면 개인 문서에서 사용자 이름 필드를 업데이트하십시오.
    3. SSO에 대해 구성된 Domino 서버 및 WebSphere Application Server에 발행된 웹 사이트의 호스트 이름 또는 TCP/IP 주소만이 아닌 전체 DNS 서버 이름을 지정하십시오. 쿠키를 서버 그룹으로 전송하는 브라우저에서 DNS 도메인은 쿠키에 포함되어야 하고 쿠키의 DNS 도메인은 웹 주소와 일치해야 합니다. 이 요구사항은 TCP/IP 도메인 전체에서 쿠키를 사용할 수 없는 이유입니다.
    4. 둘 다 같은 DNS 도메인을 사용하도록 Domino 및 WebSphere Application Server를 구성하십시오. DNS 도메인 값이 대문자 사용을 포함하여 정확하게 같은지 확인하십시오. WebSphere Application Server가 구성되는 DNS 도메인의 이름이 필요합니다. 자세한 정보는 LTPA 쿠키를 사용하여 인증을 위한 싱글 사인온의 내용을 참조하십시오.
    5. 클러스터된 Domino 서버에 서버 문서의 전체 DNS 서버 이름으로 채워진 호스트 이름이 있는지 확인하십시오. 전체 DNS 서버 이름의 사용을 통해 ICM(Domino Internet Cluster Manager)은 SSO를 사용하는 클러스터 멤버로 경로 재지정할 수 있습니다. 이 필드가 기본적으로 채워지지 않은 경우 ICM은 서버 전용 호스트 이름을 사용하여 웹 주소를 클러스터된 웹 서버로 경로 재지정합니다. DNS 도메인이 웹 주소에 포함되지 않아서 ICM이 SSO 쿠키를 전송할 수 없습니다. 이 문제점을 정정하려면 다음을 수행하십시오.
      1. 서버 문서를 편집하십시오.
      2. 인터넷 프로토콜 > HTTP 탭을 클릭하십시오.
      3. 호슽 이름 필드에 서버의 전체 DNS 이름을 입력하십시오.
    6. LDAP 서버의 포트 값이 WebSphere Application Server 관리 도메인에 대해 지정되는 경우 Domino 웹 SSO 구성 문서를 편집하고 백슬래시 문자(\)를 콜론 문자(:) 앞 LDAP 영역 필드의 값에 삽입하십시오. 예를 들면, replace myhost.mycompany.com:389 with myhost.mycompany.com\:389입니다.

  • HTTP 세션 타이머가 만료된 후에도 사용자가 로그아웃되지 않습니다.

    WebSphere Application Server의 사용자가 애플리케이션에 로그온하고 지정된 HTTP 세션 제한시간 값보다 길게 유휴 상태인 경우 사용자 정보는 무효화되지 않고 LTPA 토큰 제한시간 초과가 발생할 때까지 사용자 신임 정보가 활성 상태로 유지됩니다.

    PK25740을 적용한 후 다음 단계를 완료하여 HTTP 세션이 만기된 후 사용자를 애플리케이션에서 로그아웃하십시오.
    주의: com.ibm.ws.security.web.logoutOnHTTPSessionExpire 특성은 양식 로그인을 사용하는 애플리케이션에만 적용됩니다.
    1. 관리 콘솔에서 보안 > 글로벌 보안을 클릭하십시오.
    2. 사용자 정의 특성 아래에서 새로 작성을 클릭하십시오.
    3. 이름 필드에 com.ibm.ws.security.web.logoutOnHTTPSessionExpire를 입력하십시오.
    4. 값 필드에 true를 입력하십시오.
    5. 적용 및 저장을 클릭하여 구성에 대한 변경사항을 저장하십시오.
    6. 서버를 재동기화 및 다시 시작하십시오.
    Unexpected re-authentications: com.ibm.ws.security.web.logoutOnHTTPSessionExpire 사용자 정의 특성을 true로 설정하면, 웹 애플리케이션을 여러 개 사용할 때 예기치 않게 재인증이 요구될 수 있습니다. 기본적으로, 각 웹 애플리케이션에는 고유 HTTP 세션이 있지만 웹 브라우저에는 단일 세션 쿠키가 있습니다. 이 문제를 해결하려면 각 애플리케이션에 고유한 세션 쿠키 이름을 부여하거나 경로를 설정하여 HTTP 세션 구성을 변경하면 됩니다. 이렇게 하면 각 애플리케이션이 고유 세션 쿠키를 확보합니다. 다른 방법으로, 여러 웹 애플리케이션에 동일한 엔터프라이즈 애플리케이션을 구성하여 동일한 HTTP 세션을 공유하도록 할 수 있습니다. 자세한 정보는 세션 데이터를 공유할 수 있도록 어셈블 주제를 참조하십시오.
  • SSO가 사용 설정되고 Firefox v3.6.11이 써드파티 쿠키를 승인하도록 구성된 경우 발생할 수 있는 문제입니다.
    SSO가 사용으로 설정되어 있고 Firefox v3.6.11을 사용하는 경우 다음 중 하나가 true입니다.
    • 만료될 때까지 또는 Firefox가 닫힐 때까지 보관되는 써드파티 쿠키를 승인하도록 구성됨
    • 한 세션이 열려 있지만 다른 애플리케이션으로 전환됨
    • 권한을 부여할 다른 사용자를 요구하는 다른 애플리케이션에 대해 둘 이상의 세션이 열려 있음

    다음 오류 메시지가 표시될 수 있습니다. Error 403: AuthorizationFailed.

    이를 해결하려면 다음을 수행하여 새 애플리케이션을 실행하기 전에 써드파티 쿠키를 지우십시오.
    1. Firefox 도구 > 옵션 > 개인정보 보호정책을 선택하십시오.
    2. 히스토리가 Remember History로 설정되는지 확인하십시오.
    3. Remove individual cookies를 클릭하여 쿠키를 삭제하십시오.

    Firefox가 닫힐 때까지 보관되는 써드파티 쿠키를 승인하도록 구성된 경우 다른 세션을 닫을 수도 있습니다.


주제 유형을 표시하는 아이콘 참조 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsec_troublesso
파일 이름:rsec_troublesso.html