Page No. 112038654
작성자 : / 검수자 :
Launch Release No. 7.3.500.20250722 / Latest Release No.
※ 주의 : 기타 외부 시스템 인증 방식의 SSO연동을 적용하기 위해 '3-0.공통 설정' 과정을 선행으로 설정해야 함
1. 기타 외부 시스템 인증
− 개요
> 이 가이드를 통해 자체 인증 방식에 대한 로직을 SpCustomEndPoint.java에 자유롭게 구현하고, 그 성공 또는 실패 결과만을 AUD플랫폼 시스템에 전달하여 후속 처리를 위임할 수 있습니다.
− API 명세
> Endpoint URL: [AUD플랫폼 서비스 도메인]/api/auth/ap/sso/endpoint
> HTTP Method: GET, POST (둘 다 지원)
> Content-Type: application/x-www-form-urlencoded
− 처리 흐름
> /api/auth/ap/sso/endpoint 호출 -> SpCustomEndPoint.java의 responseParsing에서 httpServletRequest로 받아서 처리
− 적용 방법
1) 파일 준비 및 사전 작업
1-1) sso_error.jsp 추가
> 경로 : [Context Root]/extention/sso/sso_error.jsp 혹은 [자동 설치 본 설치 위치]/matrix/extention/sso/sso_error.jsp
> 작업 내용 : 위 경로에 아래 첨부한 zip파일 내 /extention/sso/sso_error.jsp 파일 위치
1-2) SpCustomEndPoint.java 추가
> 경로 : [Context Root]/WEB-INF/classes/com/matrix/outer/sso/SpCustomEndPoint.java 혹은 [자동 설치 본 설치 위치]/matrix/WEB-INF/classes/com/matrix/outer/sso/SpCustomEndPoint.java
> 작업 내용: 위 경로에 아래 첨부한 zip파일 내 /WEB-INF/classes/com/matrix/outer/sso경로의 파일을 이동 및 로직 작성
1-3) Compile.sh or Compile.bat 컴파일 스크립트 수정 및 실행
> 경로 : [Context Root]/WEB-INF/classes/com/matrix/outer/sso/Compile.* 혹은 [자동 설치 본 설치 위치]/matrix/WEB-INF/classes/com/matrix/outer/sso/Compile.*
> 작업 내용 : 스크립트의 내용을 사이트의 환경에 맞도록 설정 후 해당 스크립트를 사용하여 SpCustomEndPoint.java를 컴파일
(※ 주의 : 컴파일 후 변경사항 적용 시 WAS 재기동)
2) PORTAL 더보기 설정
> Admin -> Portal 설정 -> 더보기
> OP06_PATH_LOGIN_CONTENT = /extention/portal/samlLogin.jsp 로 변경
3) IdP(고객사 측 인증 시스템)에 Service URL, Endpoint URL 등록 요청
> Service URL : https://[AUD플랫폼 서비스 도메인]/api/auth/saml/sp/entity
> Endpoint Url : https://[AUD플랫폼 서비스 도메인]/extention/sso/acs.jsp
3. OAUTH2인증
− 처리 흐름
> 사용자 로그인 → SP(서비스 제공자)가 사용자를 IdP(인증 정보 제공자)의 로그인 페이지로 리다이렉트 → IdP(인증 정보 제공자)에서 SP(서비스 제공자)이 정보를 사용하는 것을 허용 동의
> IdP(인증 정보 제공자)는 사용자를 redirect_uri(api/auth/oauth2/callback)로 인증 코드와 함께 다시 돌려보냄
> SP(서비스 제공자)에서 인증코드와 함께 CLIENT_ID, CLIENT_SECRET을 IdP의 토큰 엔드포인트로 보냄
> IdP(인증 정보 제공자)는 모든 정보가 일치 시 액세스 토큰 발급 → SP(서비스 제공자)은 발급받은 Access Token을 사용자 정보 엔드포인트로 보냄
> IdP(인증 정보 제공자)는 토큰을 검증하고 해당 사용자의 정보(JSON)를 응답 → SP(서비스 제공자)은 외부 IdP(인증 정보 제공자)를 통해 검증된 사용자의 ID를 확보하여 로그인 처리
(※ 주의: 고객사 측 인증 시스템에 등록된 사용자가 AUD플랫폼에 사용자로 등록되어 있어야 함)
− 적용 방법
1) PORTAL 설정
1-1) Admin 시스템 운영관리 > PORTAL 설정 > sso 설정 사용 체크 후 옵션 버튼 클릭
1-2) SSO Type = OAUTH2
1-3) OAUTH2 서버 Base URL = (IdP 서버의 기본 주소)
1-4) Client ID = (IdP가 AUD 시스템을 식별하기 위해 발급해주는 공개된 ID)
1-5) Client Secrets = (CLIENT_ID와 함께 사용되는 비밀 키로, AUD 시스템이 정당한 클라이언트임을 증명할 때 사용)
1-6) Scope = (어떤 권한들을 요청하는지를 명시하는 목록) ex) openid profile email
1-7) 인가 코드 엔드포인트 = (ID 공급자(IdP)의 로그인 및 권한 동의 페이지 URL) ex) /v1/authorize
1-8) 토큰 엔드포인트 = (인증 코드를 액세스 토큰으로 교환해주는 API의 경로)
1-9) 유저 정보 조회 엔드포인트 = (액세스 토큰을 사용하여 사용자 정보(ID, 이메일 등)를 조회할 수 있는 API의 경로)
1-10) User ID Key = (사용자 정보 API 응답(JSON)에서 **사용자 ID가 담긴 필드의 이름)
1-11) AUD Target URL = (모든 인증 과정이 성공적으로 끝난 후, 사용자를 최종적으로 이동시킬 페이지 주소) ex) /portal/Content.jsp
(※ 해당 값들은 사이트에서 별도로 전달하므로 전달 받은 속성 값을 그대로 설정)
(?)
2) PORTAL 더보기 설정
> Admin -> Portal 설정 -> 더보기
> OP06_PATH_LOGIN_CONTENT = /extention/portal/oauth2Login.jsp 로 변경
3) IdP(고객사 측 인증 시스템)에 Redirection URL 등록 요청
> Redirection URL : https://[AUD플랫폼 서비스 도메인]/api/auth/oauth2/callback






