티스토리 뷰

[기획자의 개발일기]

소셜로그인과 토큰

완벽한 장면 2025. 1. 1. 10:13

플로우 차트 그려보기 실습을 하다가, 소셜로그인의 절차에 대해 고민하며 의문점이 들었다.

 

의문점을 촉발시켰던 의문의 그 문장

소셜로그인에서 비밀번호. 그럼 이제 이거는 우리가 구글 로그인으로 자동 로그인으로 돼서
얘네가 이 값을 가져온 거거든요. 그럼 이걸로만 아이디 값으로 나오고 있고 지금 비밀번호는 얘네가 체인으로 저장한 거를 지금 진행하고 있는 거예요. 토큰을.

 

 

소셜로그인, 자동로그인, 체인?

소셜 로그인

: 사용자가 구글 같은 소셜 플랫폼 계정을 통해 로그인하는 방식.

  • 사용자가 별도의 회원가입이나 비밀번호 입력 없이 구글 계정을 이용해 로그인한다.

 

자동 로그인

: 한 번만 계정 정보를 입력해두면, 후에는 자동으로 정보를 불러와 로그인하는 방식.

  • 사용자가 구글 계정으로 로그인하면, 시스템이 자동으로 구글에서 제공하는 사용자 정보를 가져온다.
  • 이 과정에서 구글은 사용자 계정과 관련된 식별 정보를 제공한다.
    이 정보를 바탕으로 시스템에서 자동 로그인이 이루어진다.

 

"아이디 값으로 나오고 있고"

  • 소셜 로그인 과정에서 '사용자 계정 정보(ID)'가 시스템에 전달된다.
  • 이 값은 보통 사용자를 식별하기 위해 사용한다. (예: 이메일 주소나 고유 사용자 ID)

 

비밀번호와 체인 저장

  • 소셜 로그인을 사용하는 경우, 사용자는 비밀번호를 직접 입력하지 않는다.
  • 비밀번호는 소셜 플랫폼(ex.구글)이 관리하며,
    플랫폼은 토큰(Token)이라는 방식으로 사용자의 인증 상태를 시스템에 전달한다.

 

토큰(Token)의 쓰임?

  • 사용자가 소셜 로그인에 성공하면 구글에서 토큰(인증 정보)을 발급한다.
  • 이 토큰을 통해 사용자가 인증되었음을 시스템에 알린다.
  • 따라서 사용자의 실제 비밀번호가 시스템에 저장되거나 전달되지 않고, 토큰만 이용해 로그인 처리가 이루어진다.

=> 이 말은 소셜 로그인 시스템에서 사용자의 비밀번호 대신 구글이 제공하는 인증 토큰을 사용해 자동 로그인을 처리한다는 뜻.

 

 

사용자의 이메일 정보(또는 소셜 플랫폼이 제공하는 고유 ID)를 이용해 계정을 식별하고,

비밀번호 입력은 **토큰(Token)**으로 대체한다.

 

이메일 정보로 사용자 식별

- 소셜 로그인에서, 구글(또는 다른 소셜 플랫폼)이 제공하는 이메일 주소나 사용자 고유 ID 값이

시스템에서 **사용자를 구분하는 키(Key)**로 사용된다.

  • 예를 들어, "example@gmail.com"이라는 이메일 주소를 사용자가 제공하면,
    시스템은 이 이메일을 기반으로 해당 사용자 계정을 생성하거나 식별한다.

 

토큰으로 인증 대체

- 사용자가 소셜 로그인 버튼을 클릭하면, 구글은 로그인에 성공한 사용자를 인증하기 위해 시스템에 토큰을 보낸다.

- 이 토큰은 구글이 "이 사용자는 이미 인증된 사용자다"라고 보증하는 임시 비밀번호 같은 역할을 수행한다.

=> 따라서 사용자가 비밀번호를 입력하지 않아도, 이 토큰을 통해 인증 상태가 유지된다.

 

비밀번호 없는 로그인

- 소셜 로그인 방식에서는 실제 사용자의 비밀번호가 시스템에 저장되지 않는다.

- 사용자는 소셜 플랫폼(예: 구글)에서 이미 인증된 상태이기 때문에, 플랫폼이 발급한 토큰만으로 로그인 처리가 완료된다.

 

장점

- 사용자는 매번 비밀번호를 입력하거나 기억할 필요가 없다.

- 비밀번호를 직접 저장하지 않기 때문에 보안 위험(예: 비밀번호 유출)이 줄어든다.

- 토큰은 일정 시간이 지나면 만료되므로, 보안성이 높다.

 

정리하는 두 문장

소셜 로그인 시스템은 사용자의 이메일로 계정을 구분하고, 토큰을 통해 비밀번호 입력 과정을 대체하는 방식.
사용자의 비밀번호는 소셜 플랫폼(구글)이 관리하며, 시스템은 이를 신뢰하고 인증을 처리한다.
728x90
반응형
Comments
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
250x250