====== 공통서비스 - 인증서로그인 ====== ===== 개요 ===== 인증서로그인은 기존 **[[GPKI 인증서 로그인]]**가 동일한 기능을 제공한다. 다만, GPKI 인증서 로그인의 경우 전자정부 표준프레임워크에 종속적으로 기능이 제공되기 때문에 전자정보 표준프레임워크가 도입되지 않는 경우는 적용하기가 어렵다. 현재 인증서로그인은 프레임워크에 비종속적으로 적용될 수 있도록 구성되어 제공된다. 구체적인 사항은 GPKI 인증서 로그인 서비스의 [[GPKI 인증서 로그인#개요]] 또는 [[GPKI 인증서 로그인#전제조건]] 등을 참조한다. ===== 설명 ===== 인증서로그인를 행정전자서명 인증관리센터(www.gpki.go.kr)에서 제공하는 GPKISecureWeb 모듈을 통해 인증서로그인 기능을 제공한다. (NPKI 및 GPKI 지원) == 관련소스 == ^유형^대상소스^비고^ |Controller|egovframework.com.utl.sec.web.EgovCertLoginController.java|인증서로그인 테스트를 위한 컨트롤러 클래스| |Util|egovframework.com.utl.sec.service.EgovCertInfoUtil.java|인증서로그인 서비스를 지원을 위한 유틸 클래스| |VO|egovframework.com.utl.sec.service.CertInfoVO.java|인증서로그인에 대한 인증서 정보 보관을 위한 VO 클래스| |Filter|egovframework.com.utl.sec.filter.CertProcessFilter.java|인증서로그인 지원을 위한 servlet filter| |RequestWrapper|egovframework.com.utl.sec.filter.CertProcessRequestWrapper.java|인증서로그인 지원을 위한 request wrapper| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertGPKIError.jsp|인증서로그인 오류 페이지를 위한 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertGpkisecureweb.jsp|인증서로그인 인증처리를 위한 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertInstall.jsp|인증서로그인 설치처리를 위한 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertSetup.jsp|인증서로그인 설치정보처리를 위한 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertVar.jsp|인증서로그인 관련 정보를 위한 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertInfoPopup.jsp|인증서로그인 정보 등록을 위한 팝업 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertLogin.jsp|인증서로그인 페이지를 위한 테스트 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertLoginConfirm.jsp|인증서로그인 인증정보 확인을 위한 테스트 jsp페이지| |JSP|/WEB-INF/jsp/egovframework/com/cmm/utl/sec/EgovCertLoginInfo.jsp|인증서로그인 등록을 위한 테스트 jsp페이지| 위의 클래스 중 Controller의 경우는 전자정부 표준프레임워크에서의 테스트 수행을 위한 컨트롤러 클래스로서 실제 적용시에는 해당 기능들을 적용 Web MVC 프레임워크 기반으로 전환하면 된다. 혹 MVC 프레임워크가 적용되어 있지 않더라고 servlet 기반 또는 해당되는 JSP로 쉽게 전환할 수 있다. CertProcessFilter 및 CertProcessRequestWrapper의 경우는 전자정부 표준프레임워크의 HTMLTagFilter(egovframework.rte.ptl.mvc.filter.HTMLTagFilter)를 사용할 경우 다음과 같이 web.xml에 같이 추가를 해주어야 한다. HTMLTagFilter는 request 파라미터들에 대하여 자동으로 tag를 변환하는데 인증서로그인 처리 부분은 이 부분이 제외되어야 하기 때문이다. HTMLTagFilter egovframework.rte.ptl.mvc.filter.HTMLTagFilter HTMLTagFilter *.do CertProcessFilter egovframework.com.utl.sec.filter.CertProcessFilter CertProcessFilter /utl/sec/certLogin.do CertProcessFilter /utl/sec/certInfoPopup.do 위에서 HTMLTagFilter filter가 적용되지 않은 경우는 위 CertProcessFilter filter도 적용할 필요는 없다. == 관련테이블 == 해당없음 ===== 환경설정 ===== 우선 행정안전부로부터 제공받은 GPKISecureWeb 모듈을 다음 경로상에 위치시킨다. /src/main/webapp/resource/gpkisecureweb GPKI와 관련된 설정은 행정전자서명 인증관리센터(www.gpki.go.kr)에 문의한다. ===== 관련화면 ===== 로그인인증서 제공 기능은 테스트화면을 포함하여 다음과 같다. ^URL^Controller^method^화면(JSP)^GPKISecureWeb 해당 페이지^ |/utl/sec/certVar.do|EgovCertLoginController|var|.../cmm/utl/sec/EgovCertVar.jsp|var.js| |/utl/sec/certInstall.do|EgovCertLoginController|certInstall|.../cmm/utl/sec/EgovCertInstall.jsp|install.html| |/utl/sec/certSetup.do|EgovCertLoginController|certSetup|.../cmm/utl/sec/EgovCertSetup.jsp|setup.conf| |/utl/sec/certGPKIError.do|EgovCertLoginController|certGPKIError|.../cmm/utl/sec/EgovCertGPKIError.jsp| | |/utl/sec/certInfoPopup.do|EgovCertLoginController|certInfoPopup|.../cmm/utl/sec/EgovCertInfoPopup.jsp| | |/utl/sec/certLogin.do(get)|EgovCertLoginController|certLogin|.../cmm/utl/sec/EgovCertLogin.jsp| | |/utl/sec/certLogin.do(post)|EgovCertLoginController|certLoginConfirm|.../cmm/utl/sec/EgovCertLoginConfirm.jsp| | |/utl/sec/certLoginInfo.do|EgovCertLoginController|certLoginPopup|.../cmm/utl/sec/EgovCertLoginInfo.jsp| | ※ 위에서 /utl/sec/certSetup.do (EgovCertSetup.jsp) 부분은 인코딩 문제로 인하여 사용하지 않고 setup.conf를 사용한다. ---- ===== 참고자료 ===== * 배포 및 테스트 관련 : [[common_component_system|Common Component System]] 및 [[배포_패키지_구성안|배포 패키지 구성안]]