SSO 로그온 에러 처리 로직 구현하기

AuthCheck 클래스의 logon 메서드를 이용해 SSO 인증 처리를 하는 도중 에러가 발생하면 agentconfig.xml에 설정한 errorPageURL 정보로 페이지가 이동됩니다.

SSO 인증이 성공한 후 각 응용 프로그램 별로 인증을 처리할 때 오류가 발생한 경우에도 상황에 맞게 처리할 수 있습니다.

샘플코드

logonError.jsp
<%@ page import="com.nets.sso.agent.AuthUtil" %>
<%@ page import="com.nets.sso.agent.configuration.SSOConfig" %>
<%@ page import="com.nets.sso.agent.configuration.SSOProvider" %>
<%@ page import="com.nets.sso.common.AgentException" %>
<%@ page import="com.nets.sso.common.Utility" %>
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%
    try {
        SSOProvider ssoProvider = SSOConfig.getInstance().getCurrentSSOProvider(request.getServerName());
        String errorCode = Utility.getRequestValue(request, "errorCode", Utility.EMPTY_STRING);
        String errorMessage = Utility.getRequestValue(request, "errorMessage", Utility.EMPTY_STRING);
        String siteID = Utility.getRequestValue(request, ssoProvider.getParamName(AuthUtil.ParamInfo.SITE_ID), Utility.EMPTY_STRING);
        String returnUrl = Utility.getRequestValue(request, ssoProvider.getParamName(AuthUtil.ParamInfo.RETURN_URL), Utility.EMPTY_STRING);

%>
<!DOCTYPE html>
<html>
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
<form id="form1" action="<%=returnUrl%>">
    <div>ErorCode: <%=errorCode %>
    </div>
    <div>ErorMessage: <%=errorMessage%>
    </div>
    <div>SITE ID: <%=siteID%>
    </div>
    <div>Return URL: <%=returnUrl%>
    </div>
    <input type="submit" value="OK"/>
</form>
</body>
</html>
<%
} catch (AgentException e) {
    System.out.println("ErrorCode : " + e.getExceptionCode().toString());
    System.out.println("ErrorMessage : " + e.getMessage());
%>
<%=e.toString()%>
<%
    }
%>

Last updated

Was this helpful?