인증확인과 인증상태에 따른 처리 방법
아래 예제 코드는 배포된 라이브러리 내 샘플페이지(e.g. default.aspx)에 포함된 코드입니다.
인증객체(AuthCheck) 선언 및 인증 상태 확인
아래와 같이 checkLogon을 호출하면 SSO 인증 상태를 확인할 수 있습니다.
인증상태(AuthStatus) 에 따른 처리
SSO 서버 최초 접근시
SSOFirstAccess는 SSO 중앙 인증은 처리 됐지만, 해당 업무시스템의 SSO 인증은 아직 되지 않은 상태를 의미합니다.
trySSO()를 호출해서 해당 업무시스템의 인증을 시도합니다.
SSO 서버 인증 성공
해당 업무시스템이 SSO 인증을 완료한 상태를 의미합니다. 이 구간에서 업무시스템 자체 세션 체크 후 인증되지 않았으면 자체 인증 처리를 하거나 업무 메인 페이지로 이동 시키는 등의 처리를 합니다.
(옵션) SSO 인증 토큰이 탈취된 토큰인지 체크하는 로직을 호출 할 수 있습니다. 몇가지 주의 사항이 있으므로 반드시 확인 후 적용하시기 바랍니다.
인증객체를 통해 SSO 서버에서 내려주는 사용자 속성을 이용하여 업무시스템 사용자와 매핑합니다. 사용자 속성 정보는 SSO 담당자와 업무시스템 담당자간 사전 협의가 필요합니다.
SSO 인증 오류 상태시
SSO 인증 과정에서는 인증 오류가 발생할 수 있습니다. 오류 발생 시 오류 정보는 agentconfig.xml 파일에 지정한 에러 처리 URL로 전달 됩니다. 개발자는 해당 페이지에서 에러 정보를 가공하여 사용자에게 보여 주어야 합니다. 에러 정보가 처리되는 과정에서 페이지 이동은 필수적으로 발생합니다. 업무 시스템에 따라 디자인 적용이 필요하다면 업무 시스템 개발자가 작업을 해야 합니다.
개발하기 챕터에서 개발언어 별로 "SSO 로그온 에러 처리 구성하기" 부분에서 상세하게 볼 수 있습니다.
Tip) 만일 로그온 페이지를 이동하지 않고 로그온 처리를 하고 싶다면, iframe을 이용하는 방법이 있을 수 있습니다. 실제로 페이지 이동은 iframe에서 처리하도록 페이지를 구성하는 것입니다. iframe의 결과가 인증을 모두 성공했다면 부모창을 이동 시키고 인증이 실패한 경우 오류 정보를 부모창에 스크립트로 전달하여 오류 정보만을 갱신하도록 하는 방법도 있을 수 있습니다.
SSO 서버 이용 불가시
SSO 서버가 일시적으로 사용할 수 없는 상태를 의미합니다. 이 경우 업무 시스템이 자체적으로 제공하는 로그인 페이지 이동시켜 사용자가 시스템을 계속 이용할 수 있도록 처리하는 것을 권장합니다.
SSO 접근 제한 상태시
SSO 정책 서버로부터 해당 업무 시스템의 접근이 제한된 상태입니다. 업무 담당자에게 메일 또는 유선으로 문의 하시기 바랍니다.
Last updated
Was this helpful?