Gate Token 개념
인증 & OAuth 2.0
인증이란 특정 사용자가 본인임을 확인하는 절차를 의미합니다. 일반적으로 아이디와 비밀번호가 일치하면 해당 사용자가 본인이라고 판단할 수 있습니다. 예를 들어, 다보리에 로그인할 때 다보리 계정의 아이디와 비밀번호를 입력하여 본인 여부를 확인하는 방식입니다.
하지만, 다보리 오픈API를 활용하여 개발한 애플리케이션에서 사용자가 다보리 계정의 아이디와 비밀번호를 직접 입력하도록 하면 보안상의 위험이 발생할 수 있습니다. 이를 방지하기 위해, 사용자가 제 삼자가 만든 애플리케이션이 아닌 **공식 인증 서비스(예: 네이버 로그인 페이지)**에서 직접 인증을 진행하고, 그 결과를 애플리케이션에 전달하는 방식이 필요합니다.
이러한 인증 방식을 체계적으로 정리한 표준이 OAuth이며, 다보리 오픈API는 OAuth 2.0 프로토콜을 적용하여 안전한 인증 서비스를 제공하고 있습니다.
Gate
Token이란?Token
SSO에dabory sso에 가입한 사용자는 로그인후 접속정보를 통해 ClientId와 PublicKey를 발급받습니다. 최초에 작성된 sodium key pair는 sso 서버에 저장됩니다.
(Front-end) - - - - > {Client Id, BA64 Key} - - - - > (Back-end)
gateToken 생성
(Back-end) - - - - > {gate token} - - - - > (Front-end)
Front-end에Frontend에서 최초 발급된 ClientId와 사용자의 db 접속정보가 암호화된 BA64Base64 Key를 Back-end로 Backend로 전송하면 Back-end에서후 Gate Token을 생성하여 반환하면고 Front-End에서 session에 토큰을 저장하여 사용할 수 있습니다. 이 Gate Token을 통해 사용자를 검증하고 세션을 유지시켜줍니다. 또한 Gate token을GateToken을 발급받은 사용자는 한번의 로그인으로 다수의 API 서버와 연동할 수 있습니다.
[Gate Token 순서도]
https://manual.dabory.com/books/frontend-tutorial/page/envdabory-gate-token