로그인 / Firebase 저장소
  문서로 돌아가기

로그인

Firebase 저장소

Firebase 저장소를 사용하는 경우 다음 기능에 접근할 수 있습니다:

알림
프로모션 또는 업데이트에 대해 사용자에게 뉴스레트를 보내기 위한Firebase 확장을 사용할 수 있습니다.

상호작용 절차

로그인 위젯을 사용하거나 여러분의 애플리케이션을 클라이언트로 사용할 수 있습니다. 클라이언트와 엑솔라 로그인 서버간의 상호작용은 다음과 같습니다:

  1. 클라이언트는 엑솔라 로그인 서버로 요청을 보냅니다. 요청 양식은 JWT, OAuth 2.0, 및 Password 엔드포인트에 기술되어 있습니다.
  2. 엑솔라 로그인 서버는 Firebase에 요청을 보냅니다.
  3. 엑솔라 로그인 서버는 Firebase로부터의 응답을 처리하고 클라이언트에 결과를 반환합니다.
  4. 클라이언트는 응답을 처리합니다.

알림
비밀번호를 제외한 모든 사용자 정보는 엑솔라 측에 저장됩니다.

사용자 등록 절차

  1. 클라이언트는 엑솔라 로그인 서버에Register new user 요청을 보냅니다.
  2. 엑솔라 로그인 서버는 Firebase에 등록 요청을 보냅니다.
  3. 사용자 데이터는 엑솔라 데이터베이스에 기록됩니다.
  4. 사용자의 이메일 주소 상태가 확인됩니다:
    • 사용자가 Firebase에서 이전에 이메일 주소를 확인하지 않은 경우, 시스템으로부터 확인 이메일을 수신합니다. 사용자가 이메일 주소를 확인하는 즉시, 엑솔라 로그인 서버에서 자동으로 확인됩니다.
    • 사용자의 이메일 주소가 등록 이후 즉시 Firebase에서 확인된 경우, 사용자가 인증되고 콜백 URL로 리디렉션되는데 이는 로그인 프로젝트 생성 시 지정됩니다.

사용자 이메일 주소와 암호를 통한 인증

사용자 이메일 주소와 비밀번호를 통한 인증에는 두 가지 유형이 있습니다: JWT 표준 기반OAuth 2.0 프로토콜 기반 인증.

알림
  • 엑솔라 데이터베이스에 입력 항목이 없는 경우, 항목이 생성됩니다.
  • 엑솔라 로그인 서버는 Firebase에서 다음의 사용자 데이터를 요청하고 이를 엑솔라 데이터베이스에 업데이트합니다: 이메일 확인 상태, 아바타 및 화면 이름 (해당하는 경우).

JWT 표준 기반 인증 흐름

  1. 클라이언트는 Auth by username and password 요청을 엑솔라 로그인 서버에 보냅니다.
  2. 엑솔라 로그인 서버는 인증 요청을 Firebase에 보냅니다.
  3. 엑솔라 로그인 서버는 사용자 JWT를 생성하며:
    • localId 요청에 대한 응답으로부터의 값은external_account_id 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase ID 토큰 값은 firebase_id_token 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase 갱신 토큰 값은 firebase_refresh_token 요구에 기록됩니다.
  4. 사용자는 login_url로 쿼리 매개변수token과 함께 리디렉션됩니다. 사용자 JWT는token 매개변수에 기록됩니다.

OAuth 2.0 프로토콜 기반 인증 흐름

  1. 클라이언트는 Auth by username and password 요청을 redirect_uri 매개변수와 함께 엑솔라 로그인 서버로 보냅니다.
  2. 엑솔라 로그인 서버는 인증 요청을 Firebase에 보냅니다.
  3. 엑솔라 로그인 서버는 쿼리 매개변수에 login_url과 함께 code를 반환하며 redirect_uri를 전달합니다.
  4. 사용자는 redirect_uri로 쿼리 매개변수 code와 함께 리디렉션됩니다.
  5. 클라이언트는 Generate JWT 요청을 엑솔라 로그인 서버로 전송하여 수신한 사용자 JWT code를 교환합니다.
  6. 엑솔라 로그인 서버는 사용자JWT를 생성하며:
    • Firebase 요청에 대한 응답으로부터의 localId 값은 external_account_id 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase ID 토큰 값은 firebase_id_token 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase 갱신 토큰 값은 firebase_refresh_token 요구에 기록됩니다.

소셜 네트워크를 통한 인증

Google 및 Facebook을 통한 인증만 지원됩니다. 두 가지 인증 시나리오를 사용할 수 있습니다: JWT 표준 기반OAuth 2.0 프로토콜 기반 인증.

JWT 표준 기반 인증 흐름

  1. 사용자는 위젯 버튼을 클릭하거나 로그인 API 메소드를 통해인증을 개시합니다.
  2. 사용자는 자격 증명을 입력한 소셜 네트워크의 로그인 페이지로 리디렉션됩니다.
  3. 소셜 네트워크는 사용자 정보를 엑솔라 로그인 서버에 대한 액세스 토큰과 함께 반환합니다.
  4. 엑솔라 로그인 서버는 해당 토큰과 함께 Firebase에 OAuth 자격 증명으로 로그인 메소드를 통해 인증 요청을 보냅니다.
  5. 엑솔라 로그인 서버는 사용자JWT를 생성하며:
    • Firebase 요청에 대한 응답으로부터의 localId 값이 external_account_id 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase ID 토큰 값이 firebase_id_token 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의Firebase 갱신 토큰 값이 firebase_refresh_token 요구에 기록됩니다.
  6. 사용자는 login_url로 쿼리 매개변수 token과 함께 리디렉션됩니다. 사용자 JWT는 token 매개변수에 기록됩니다.

OAuth 2.0 프로토콜 기반 인증 흐름

  1. 사용자는 위젯의 버튼을 클릭하거나 로그인 API 메소드를 통해 인증을 시작합니다.
  2. 사용자는 자격 증명을 입력하는 소셜 네트워크의 로그인 페이지로 리디렉션됩니다.
  3. 소셜 네트워크는 엑솔라 로그인 서버 액세스 토큰과 함께 사용자에 대한 정보를 반환합니다.
  4. 엑솔라 로그인 서버는 해당 토큰과 함께 OAuth 자격 증명으로 로그인 메소드로 Firebase에 인증 요청을 보냅니다.
  5. 엑솔라 로그인 서버는 login_url을 쿼리 매개 변수의 code 및 전달된 redirect_uri 매개 변수와 함께 반환합니다.
  6. 사용자는 redirect_uri로 쿼리 매개 변수 code와 함께 리디렉션됩니다.
  7. 클라이언트는 JWT 생성하기 요청을 엑솔라 로그인 서버에 보내 사용자 JWT를 위해 수령한 code를 교환합니다.
  8. 엑솔라 로그인 서버가 사용자 JWT를 생성하는 동안:
    • FIrebase 요청에 대한 응답으로부터의 localId 값이 external_account_id 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase ID 토큰 값이 firebase_id_token 요구에 기록됩니다.
    • Firebase 요청에 대한 응답으로부터의 Firebase 갱신 토큰 값이 firebase_refresh_token 요구에 기록됩니다.

사용자 차단

관리자 페이지을 통해 사용자를 차단할 수 있습니다. 차단된 사용자는 인증할 수 없습니다. 차단은 엑솔라 측에서만 기록 및 저장됩니다.

이 기사가 도움이 되었나요?
감사합니다!
개선해야 할 점이 있을까요? 메시지
유감입니다
이 기사가 도움이 안 된 이유를 설명해 주세요. 메시지
의견을 보내 주셔서 감사드립니다!
메시지를 검토한 후 사용자 경험 향상에 사용하겠습니다.

계속 읽기

마지막 업데이트: 2024년 8월 30일

오자 또는 기타 텍스트 오류를 찾으셨나요? 텍스트를 선택하고 컨트롤+엔터를 누르세요.

문제 보고
콘텐츠를 항상 검토합니다. 여러분의 피드백은 콘텐츠를 개선에 도움이 됩니다.
후속 조치를 위해 이메일을 제공해 주세요
의견을 보내 주셔서 감사드립니다!