세종 Auth API

개요

SOOJLE의 사용자는 기본적으로 세종대학교의 구성원이며, 이들은 모두 세종대학교 포탈 시스템의 계정을 소유하고 있다는 전제하에 본 API를 개발하였다. 본 API를 통해 이미 포탈 계정을 가지고 있는 모든 사용자에 대하여 별도의 회원가입 없이 곧바로 로그인을 수행할 수 있도록 하였다.

API 동작 구조

  • SOOJLE 서비스를 이용하는 사용자가 로그인 페이지에서 ID, PW를 SOOJLE 서버로 전송한다.

  • SOOJLE 서버는 해당 정보를 HTTP 프트로콜을 통해 전송하여 세종대학교 본교 시스템에 접속을 시도한다.

  • 승인이 된다면, 유효한 계정 정보로 인정하고 SOOJLE 서버에서 해당 정보를 바탕으로 자동으로 회원가입을 수행한다.

  • 해당 정보는 SOOJLE DB에 모두 해쉬 처리되어 저장되며, 오직 인증 수단을 위하여 보존된다.

  • 한 번이라도 해당 서비스에 접근한 사용자는 DB의 데이터를 통해 별도의 인증 과정 없이 바로 로그인을 수행한다.

접근 경로 명세

세종대학교 본교 시스템은 모두 포탈 시스템의 인증 체계를 거쳐 수행한다. 해당 Sejong Auth API는 다음과 같은 서비스에 접근하여 로그인을 수행한다.

URL

명세

세종대 LMS

세종대 두드림

세종대 포탈 시스템

각 사이트들의 구조 변화에 의하여 일시적으로 접근이 불가능해질 수 있으며, 3개의 타겟을 대상으로 병렬적으로 접속을 시도하고, 한 곳이라도 승인 판정이 반환되면 해당 계정 정보는 유효하다고 판단한다.

Output

계정 인증 에 성공했을 경우

return {
			"result":True,
			"name":name,
			"id":id,
			"major":major
		}

계정 인증에 실패했을 경우

실패한 요인은, 계정 정보 자체가 유효하지 않을 수도 있지만 시스템 자체에 접속이 되지 않아 인증 자체가 불가능한 상황도 포함된다.

return {"result":False}

소스 코드 배포

실행 요구사항

분류

설명

플랫폼

Github

라이센스

MIT License

분류

버전명

개발 언어

Python 3.7.1

Last updated