Developer Docs

SSAFY 본인인증을 빠르게 연동하는 문서

v1 공식 범위는 PASS식 Verify API입니다. 모바일은 WebView가 아니라 hosted page와 backend exchange 계약을 사용합니다.

Canonical issuer

Verify 연동 설정은 아래 issuer 하나만 사용합니다.

https://verify.myknow.xyz

callback의 isshttps://verify.myknow.xyz와 exact match일 때만 token exchange를 시작하세요. SDK/API base URL과 JWKS 기준값도 같은 issuer를 사용합니다.

처음이면 Verify API

Verify API는 PASS처럼 이번 거래에서 SSAFY 구성원임을 확인하는 흐름입니다. 외부 앱의 자체 로그인은 유지하면서 SSAFY 인증 결과만 받을 수 있습니다.

OIDC는 v2에서 지원 예정

SSAFY Verify v1은 본인인증만 공식 지원합니다. 외부 앱 로그인을 SSAFY Verify로 대체하는 OIDC provider 문서는 현재 public quickstart 범위에서 제외합니다.

이미 구현된 OIDC endpoint는 향후 호환성을 위해 유지하지만, 신규 연동은/verify/authorize/verify/token만 사용하세요.

운영 전 준비물

이 다섯 가지가 준비되면 Quickstart 예제를 기준으로 연동할 수 있습니다.

client_id

Developer Portal에서 신청하고 승인받은 client id

redirect_uri

관리자 승인 client에 exact match로 등록된 callback URL

scope

ssafy.verify는 필수. 기수/캠퍼스/지역은 ssafy.affiliation, 이름은 ssafy.name, 이미지는 ssafy.profile_image 추가

Mattermost id

기존 Mattermost 인증 프로젝트의 계정 매핑이 필요할 때만 ssafy.mattermost_id 요청

PKCE S256

브라우저에서 verifier를 만들고 서버 token exchange까지 보존

state

요청 시작 시 만든 값을 callback에서 반드시 비교

핵심 endpoints

/verify/authorizeGET

사용자가 SSAFY 인증을 진행하는 화면

/verify/tokenPOST

callback code를 verification_token으로 교환