사용자 정의 저장소

사용자 지정 저장소를 사용하는 경우 다음 기능에 대한 액세스 권한이 있습니다.

상호작용 절차

Login API 요청를 사용하는 로그인 위젯 혹은 애플리케이션을 클라이언트로 사용할 수 있습니다. 클라이언트와 엑솔라 로그인 서버 사이의 상호작용 절차는 다음과 같습니다:

  1. 클라이언트가 엑솔라 로그인 서버로 요청을 보냅니다. 요청 형식은 다음 JWTPassword 엔드포인트에 기술되어 있습니다.
  2. 엑솔라 로그인 서버가 여러분의 서버로 요청을 보냅니다. 지침을 따라 요청을 검증합니다.
  3. 엑솔라 로그인 서버가 여러분의 서버의 응답을 처리하여 결과를 클라이언트에게 반환합니다.
  4. 클라이언트는 응답을 처리합니다.

사용자 등록

  1. 클라이언트는 Register new user 요청을 엑솔라 로그인 서버로 보냅니다.
  2. 엑솔라 로그인 서버는 요청을 새 사용자 URL로 보냅니다. 응답은 반드시 다음 지침에 기술된 형식이어야 합니다.

요청 예제:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://your.hostname/your_registration_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json

{
  "email": "john@gmail.com",
  "password": "123456"
}
curl --request POST \
  --url 'https://your.hostname/your_registration_uri' \
  --header 'authorization: bearer_JWT' \
  --header 'content-type: application/json' \
  --data '{"email":"john@gmail.com","password":"123456"}'

  1. 사용자 데이터는 엑솔라 데이터베이스에 기록되는 반면에 email은 미확인으로 표시됩니다. 사용자는 계정 확인 이메일을 받게 됩니다.
  2. 로그인 위젯을 통합한 경우, 사용자는 다음 메시지와 함께 해당 페이지로 재지정됩니다: {email}로 송부한 지침에 따라 여러분 계정을 확인하세요.

사용자 이름 및 암호를 통한 인증

  1. 클라이언트는 Auth by username and password 요청을 엑솔라 로그인 서버로 보냅니다.
  2. 엑솔라 로그인 서버는 요청을 사용자 검증 URL로 보냅니다. 응답은 반드시 다음 지침에 기술된 형식이어야 합니다.

요청 예제:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://your.hostname/your_authentication_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json

{
  "email": "john@gmail.com",
  "password": "123456"
}
curl --request POST \
  --url 'https://your.hostname/your_authentication_uri' \
  --header 'authorization: bearer_JWT' \
  --header 'content-type: application/json' \
  --data '{"email":"john@gmail.com","password":"123456"}'

  1. 엑솔라 로그인 서버는 사용자 JWT를 생성합니다.
  2. 사용자는 login_urltoken 쿼리 매개변수와 함께 재지정됩니다. 이 token 매개변수는 사용자 JWT를 포함합니다.

Note
엑솔라 데이터베이스에 기록된 사용자 데이터가 없는 경우 새 사용자가 생성됩니다.

전화번호를 통한 암호 없는 인증

  1. 사용자가 자신의 전화번호를 입력할 수 있도록 클라이언트가 인증 양식을 엽니다.
  2. 사용자가 자신의 전화번호를 입력합니다.
  3. 클라이언트가 Start auth by phone number 요청을 엑솔라 로그인 서버에 보냅니다.
  4. 사용자가 확인 코드를 넣을 수 있도록 클라이언트가 필드를 표시합니다.
  5. 사용자가 받은 확인 코드를 입력합니다.
  6. 클라이언트가 Complete auth by phone number 요청을 엑솔라 로그인 서버에 보냅니다.
  7. 첫 번째 사용자 인증인 경우, 엑솔라 로그인 서버가 요청을 전화 URL을 이용한 암호 없는 로그인으로 보냅니다. 응답은 반드시 지침에 설명된 형식이어야 합니다.

요청 예제:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://your.hostname/your_phone_authentication_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json

{
  "login": "+12025550140",
  "type": "phone"
}
curl --request POST \
  --url 'https://your.hostname/your_phone_authentication_uri' \
  --header 'authorization: bearer_JWT' \
  --header 'content-type: application/json' \
  --data '{"login":"+12025550140","type":"phone"}'

소셜 네트워크를 통한 인증

SNS를 통한 인증 중 사용자 데이터를 가져오려면, SNS 인증 웹훅 URL을 명시합니다. SNS로부터 받은 데이터를 포함한 요청이 그곳으로 전송됩니다. SNS 인증 웹훅 URL을 계정 관리자에게 보내 이 기능에 접근합니다.

인증 절차:

  1. 클라이언트가 Auth via social network 요청을 엑솔라 로그인 서버로 보냅니다.
  2. 사용자가 SNS로 로그인 합니다.
  3. 엑솔라 로그인 서버는 SNS로부터 수신한 사용자 데이터를 처리하고 요청을 SNS 인증 웹훅 URL로 보냅니다. 응답은 반드시 다음 지침에 기술된 형식이어야 합니다.

요청은 Authorization: Bearer <JWT> 헤더 내의 임시 토큰에 데이터를 포함합니다. 요청에 전달된 사용자 JWT는 다음 데이터를 포함합니다:

청구유형설명
expUnix TimestampJWT 만료 날짜 및 시간. The JWT 수명은 7분입니다. 필수.
iatUnix Timestamp날짜와 시간 JWT가 발행되었습니다. 필수.
issstringJWT 서명한 서비스 https://login.xsolla.com. 필수.
request_typestring상수: gateway_request. 필수.
xsolla_login_project_idstring (UUID)게시자 계정의 귀하의 로그인 프로젝트 ID. 필수.
emailstring사용자 이메일 주소.
substring (UUID)엑솔라 로그인 서버에 기록된 사용자 ID. 필수.
usernamestring사용자 이름.
providerstring인증에 사용된 SNS 이름. 필수.
idstringSNS 상의 사용자 ID. 필수.

토큰 페이로드 예제:

Copy
Full screen
Small screen
{
  "exp": 1573635020,
  "iat": 1573634600,
  "iss": "https://login.xsolla.com",
  "request_type": "gateway_request",
  "xsolla_login_project_id": "00000000-0000-0000-0000-000000000000",
  "sub": "00000000-0000-0000-0000-000000000000",
  "email": "example@test.com",
  "username": "Smith707",
  "provider": "google",
  "id": "123",
}

요청 예제:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://your.hostname/your_social_authentication_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json

{}
curl --request POST \
  --url 'https://your.hostname/your_social_authentication_uri' \
  --header 'authorization: bearer_JWT' \
  --header 'content-type: application/json'

사용자 암호 재설정

  1. 클라이언트는 Reset password 요청을 엑솔라 로그인 서버로 보냅니다.
  2. 엑솔라 로그인 서버는 사용자에게 비밀번호 초기화 확인 이메일을 보냅니다.
  3. 이메일에서 비밀번호 초기화 확인 후, 사용자는 새 이메일을 입력할 수 있는 페이지로 재전송됩니다.
  4. 사용자는 새 비밀번호를 입력합니다.
  5. 엑솔라 로그인 서버는 요청을 비밀번호 초기화 URL로 보냅니다. 응답은 반드시 다음 지침에 기술된 형식이어야 합니다.

요청 예제:

Copy
Full screen
Small screen
http
  • http
  • curl
POST https://your.hostname/your_reset_uri HTTP/1.1
Authorization: Bearer {JWT}
Content-Type: application/json

{
  "username": "john@gmail.com",
  "fields": {
    "password": "NewPa$$word1"
  }
}
curl --request POST \
  --url 'https://your.hostname/your_reset_uri' \
  --header 'authorization: bearer_JWT' \
  --header 'content-type: application/json' \
  --data '{"email":"john@gmail.com","fields":{"password":"NewPa$$word1"}}'

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

답하기 원하지 않습니다

의견을 보내 주셔서 감사드립니다!

계속 읽기

마지막 업데이트: 2021년 8월 16일

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

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