행정전자서명 인증서란 행정전자서명이 진정한 것임을 확인, 증명할 수 있도록 하기 위하여 행정기관, 보조기관, 보좌기관, 공공기관, 은행 또는 사용자에게 발급하는 전자적 정보를 말한다. 전자서명은 인감증명서의 인감도장과 같은 역할을 하는 전자문서의 신뢰성 보증 수단이다. 행정전자서명은 공무원 및 행정업무 처리자를 위한 인증서(GPKI)로서 민간부분을 위한 인증서(NPKI)와 상호 연동을 통해 사용자 서비스를 제공한다.
GPKI 인증 API는 암호이론을 바탕으로 하는 보안서비스를 포함하거나 제공하는 응용프로그램을 만들기 위한 관리도구이다. 암호에 대한 배경 지식이 많지 않은 개발자도 필요한 보안 사항에 따라 표준보안API 모듈을 사용하면 그에 대한 보안서비스를 제공하는 프로그램을 손쉽게 개발할 수 있다. 본 기능은 정부인증센터가 구축한 정부공개키기반구조(GPKI:Government Public Key Infrastructure)를 공유하여 행정의 효율성을 제고할 수 있도록 GPKI 인증서 로그인 처리를 담당한다.
GPKI 인증서 로그인은 개인이 갖고 있는 인증서와 비밀번호를 가지고 인증을 확인한 뒤, 인증 성공 시 dn값을 추출한다.
DN 값을 가지고 업무사용자 테이블에서 해당 사용자의 정보(ID 및 비밀번호 등)를 조회한다.
조회된 사용자 정보를 통해 로그인 로그를 생성하며, Spring Security를 호출하여 권한 인증 및 세션 설정을 한다.