인증

저희가 제공하는 방법 안내서에서 고급 설정에 대해 자세히 알아보세요.

OAuth 2.0 인증 설정 방법

OAuth 2.0는 수명이 긴 토큰을 사용하는 대신 장기간 권한 부여(갱신 토큰)를 위해 수명이 짧은 토큰을 사용합니다. 갱신 토큰을 사용하면 사용자는 사용자 이름과 비밀번호 재입력을 하지 않고도 연장된 시간 동안 내 애플리케이션에 머물 수 있습니다. 이는 사용자 인증 데이터를 손상할 위험을 제거합니다.

권한 부여를 위한 OAuth 2.0 설정:

  • 사용자 이름 또는 이메일 및 암호를 통해
  • SNS를 통해
  • Steam을 통해

옵션이 활성화 된 경우, 사용자 등록과 인증은 Register new userJWT auth by username and password API 호출을 호출함으로 수행됩니다. Login & Account System 자산은 OAuth 2.0 권한 부여에 대하여 JWT 토큰 권한 부여와 같은 메소드를 제공합니다. 장면에서 엔진이 처음으로 개체를 초기화하면 Awake 메소드가 호출됩니다. 메소드는 현재 갱신 토큰의 만료를 확인합니다.

Note
본 인증을 사용하여도 여러분 애플리케이션에서의 사용자 등록은 바뀌는 부분이 없습니다.

OAuth 2.0 권한 부여 구성:

  1. 게시자 계정에서 로그인 프로젝트를 위한 OAuth 2.0 인증 설정을 합니다.
  2. Unity 프로젝트에 자산 설정을 합니다.

게시자 계정에서 로그인 프로젝트를 위한 OAuth 2.0 인증 설정

  1. 게시자 계정으로 이동하세요.
  2. 열기로그인 블록에서 클릭해서 로그인 프로젝트로 이동하세요.
  3. 열기 및 설정을 로그인 프로젝트 블록에서 클릭합니다.
  4. 일반 설정 > 권한 부여로 이동합니다.
  5. 연결OAuth 2.0 인증 블록에서 클릭합니다.
  6. OAuth 2.0 리디렉션 URI을 지정하고 연결을 클릭합니다.
  7. 클라이언트 ID를 복사 및 저장합니다.

Unity 프로젝트에 자산 설정

  1. Unity 프로젝트로 이동하세요.
  2. 메인 메뉴에서 Window > Xsolla > Edit Settings를 클릭하세요.
  3. Inspector 창에서:
    1. Authorization method 필드에서, OAuth2.0을 선택합니다.
    2. OAuth2.0 client ID 필드에서 게시자 계정에서OAuth 2.0을 설정할 때 받은 클라이언트 ID를 지정합니다.

갱신 토큰을 사용하려면 Login & Account System 자산에서 다음 메소드를 구현합니다.

  • IsOAuthTokenRefreshInProgresstrue를 토큰 갱신 프로세스 동안에 반환하고, 그렇지 않은 경우에는 false를 반환합니다.
  • ExchangeCodeToToken — 유효한 JWT에 대하여 사용자 인증 코드를 교환합니다.

GetSocialNetworkAuthUrl 메소드에서 찾은 oauthState 인수는 OAuth 2.0 인증 중에 추가 사용자 검증에 사용됩니다. 이 인수는 발생 가능한 CSRF 공격을 완화하기 위해 사용됩니다.

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

독자적인 로그인 시스템 사용 방법

Notice
다음 자산으로만 작업 시 이 방법 안내서를 사용합니다.
  • Game Commerce
  • Cross-Buy

Game Commerce와 Cross-Buy 자산을 자체 로그인 시스템과 통합할 수 있습니다. 이렇게 하려면, 페이 스테이션 액세스 토큰을 통해 여러분의 애플리케이션에서 사용자 인증 기능을 구현해야 합니다. 인게임 스토어 문서의 인증 알고리즘을 참고하세요.

자체 로그인 시스템 사용 방법:

  1. Unity 프로젝트용 자산 구성.
  2. 페이 스테이션 액세스 토큰 처리 로직 구현.

Unity 프로젝트에 대한 자산 구성

  1. Unity 프로젝트로 이동합니다.
  2. Window > Xsolla > Edit Settings를 메인 메뉴에서 클릭합니다. Inspector 창에서 Access Token 값을 Authorization method 필드에서 선택합니다.
  3. Authorization server URL 필드에서 권한 부여 서버 주소를 지정합니다.

페이 스테이션 액세스 토큰 처리 로직

  1. 인증을 위해서는 애플리케이션 서버 측으로부터 수신한 페이 스테이션 액세스 토큰을 반환하는 GetUserAccessToken 메소드를 사용하세요.
  2. JWT 토큰 대신에 Game Commerce 혹은 Cross-Buy 자산 메소드의 토큰을 사용합니다.
  3. 만료 후 새 페이 스테이션 액세스 토큰을 수신하는 로직을 구현합니다. 새 토큰을 백그라운드 모드에서 수신하여 사용자가 애플리케이션에 다시 로그인하지 않아도 되게 할 것을 권장합니다.

Note
페이 스테이션 액세스 토큰을 인게임 스토어 및 인벤토리와 같이 사용하는 경우 엑솔라 API로의 마지막 호출 후 1시간이 지나면 만료됩니다. 페이 스테이션 액세스 토큰의 수명을 변경하려면, 계정 관리자에게 문의하세요.
이 기사가 도움이 되었나요?
감사합니다!
개선해야 할 점이 있을까요? 메시지
유감입니다
이 기사가 도움이 안 된 이유를 설명해 주세요. 메시지
의견을 보내 주셔서 감사드립니다!
메시지를 검토한 후 사용자 경험 향상에 사용하겠습니다.
숨기기

SNS를 통한 고유 인증 설정 방법

기본 인증은 모바일 기기에서 구성된 SNS 계정을 통해 사용자가 여러분의 애플리케이션에 로그인할 수 있게 합니다.

사용자가 처음 로그인하면, SNS 애플리케이션은 실행된 다음 사용자 인증 권한을 요청합니다. 그후에는 인증이 자동으로 사용자에게 아무것도 요구하지 않고 자동으로 수행됩니다.

현재 SDK가 다음 SNS를 통한 기본 인증을 구현했습니다.

  • Google
  • Facebook
  • WeChat
  • QQ

기본 인증 구성 방법:

  1. Android용 Unity 프로젝트 빌드를 생성합니다.
  2. 개발자 계정에서 SNS용 애플리케이션 구성 방법:
    1. Facebook을 통한 인증:
      1. 등록하고 새 애플리케이션을 만듭니다.
      2. Facebook 개발자 계정에서 애플리케이션 페이지를 설정합니다.
    2. Google을 통한 인증은 Google API 콘솔에서 프로젝트를 설정합니다.
    3. WeChat을 통한 인증:
      1. 등록하고 새 애플리케이션을 만듭니다.
      2. 검토용 애플리케이션을 제출합니다.
    4. QQ를 통한 인증:
      1. 등록하고 새 애플리케이션을 만듭니다.
      2. 검토용 애플리케이션을 제출합니다.

  1. 엑솔라 측에서 SNS를 통한 인증 설정 방법:
    1. Facebook 및 Google은 게시자 계정에서 SNS 연결을 설정합니다.
    2. WeChat 및 QQ는 계정 관리자에게 문의합니다.
  2. Unity 프로젝트용 자산을 설정합니다.

Android용 Unity 프로젝트 빌드 생성

  1. Unity 프로젝트로 이동하십시오.
  2. 메인 메뉴에서 File > Build settings를 클릭하십시오.
  3. Platform 패널에서 Android를 클릭하십시오.
  4. Build를 클릭하십시오.
  5. 해쉬 키가 형성되었는지 확인하십시오:
    1. 메인 메뉴에서 Window > Xsolla > Edit Settings를 클릭하십시오.
    2. Android debug hash key 필드에서 해쉬 키가 표시되는지 확인하십시오.

추가 고유 인증 구성을 위해서는 다음이 필요합니다:

  • Package NameInspector 창에서 찾을 수 있는데 이는Android 플랫폼을 File > Build settings에서 선택한 이후입니다.
  • Android class nameWindow > Xsolla > Edit Settings > Inspector > Android class name에서 찾을 수 있습니다.
  • Android debug hash keyWindow > Xsolla > Edit Settings > Inspector > Android debug hash key에서 찾을 수 있습니다.

Facebook 개발자 계정의 어플리케이션 페이지 설정

  1. Facebook 개발자 계정의 프로젝트 설정으로 이동합니다.
  2. 설정 > 기본으로 이동합니다.
  3. 플랫폼 추가를 클릭하고 Android를 선택합니다.
  4. Unity 프로젝트의 Package NameGoogle Play 패키지 이름 필드에서 지정합니다.
  5. Unity 프로젝트의 Android class name클래스 이름 필드에서 지정합니다.
  6. Unity 프로젝트의 Android debug hash key키 해시 필드에서 지정합니다.
  7. 변경 내용 저장을 클릭합니다.

추가 고유 인증 구성을 위해서는 설정 > 기본 섹션의 프로젝트 설정에 있는 앱 ID앱 시크릿 코드가 필요합니다.

Google API 콘솔에서 프로젝트 설정

  1. Google API 콘솔로 이동합니다.
  2. 새 프로젝트를 클릭합니다.
  3. 프로젝트 이름위치를 지정하고 저장을 클릭합니다.
  4. 만든 프로젝트로 이동하여 OAuth 동의 화면을 측면 메뉴에서 클릭합니다.
  5. 외부 옵션을 선택하고 생성을 클릭합니다.
  6. 필요한 매개 변수를 지정하고 저장을 클릭합니다.
  7. 측면 메뉴에서 자격 증명을 클릭합니다.
  8. Unity 애플리케이션용 OAuth 2.0 클라이언트 생성 방법:

    1. 자격 증명 생성을 클릭하고 OAuth 클라이언트 ID를 선택합니다.
    2. Android애플리케이션 유형 필드에서 지정합니다.
    3. 이름을 지정합니다.
    4. Unity 프로젝트의 Package Name패키지 이름 필드에서 지정합니다.
    5. Unity 프로젝트의 Android debug hash keySHA-1 인증 지문 필드에서 지정합니다.
    6. 생성을 클릭합니다.
    7. 확인을 클릭합니다.

  1. 웹 애플리케이션용 OAuth 2.0 클라이언트 생성 방법:
    1. 자격 증명 생성을 클릭하고 OAuth 클라이언트 ID를 선택합니다.
    2. 웹 애플리케이션애플리케이션 유형 필드에서 지정합니다.
    3. 이름을 지정합니다.
    4. URI 추가권한이 부여된 리디렉션 URI 섹션에서 클릭하고 https://login.xsolla.com/api/social/oauth2/callback URI을 지정합니다.
    5. 생성을 클릭합니다.
    6. 확인을 클릭합니다.

추가 고유 인증 구성을 위해서는 웹 어플리케이션의 클라이언트 ID 설정에서 Client IDClient Secret가 필요합니다.

엑솔라 게시자 계정에서 로그인 프로젝트용 SNS 설정

  1. 게시자 계정에서 프로젝트를 엽니다.
  2. 로그인을 사이드 메뉴에서 클릭하고 로그인 프로젝트 > 나의 로그인 프로젝트 > SNS 연결로 이동합니다.
  3. Facebook을 통해 인증 설정 방법:

    1. 편집Facebook 패널에서 클릭하고 상태를 연결 끊김으로 변경합니다.
    2. Facebook 개발자 계정의 앱 ID애플리케이션 ID 필드에서 지정합니다.
    3. Facebook 개발자 계정의 앱 암호애플리케이션 암호 필드에서 지정합니다.
    4. 연결을 클릭합니다.

  1. Google을 통한 인증 설정 방법:
    1. 편집Google 패널에서 클릭하고 상태를 연결 끊김으로 변경합니다.
    2. Google API 콘솔의 웹 애플리케이션용 클라이언트 ID애플리케이션 ID 필드에서 지정합니다.
    3. Google API 콘솔의 웹 애플리케이션용 클라이언트 암호애플리케이션 암호 필드에서 지정합니다.
    4. 연결을 클릭합니다.

Unity 프로젝트에 대한 자산 설정

  1. Unity 프로젝트로 이동합니다.
  2. Window > Xsolla > Edit Settings를 메인 메뉴에서 클릭합니다.
  3. 애플리케이션 ID 지정:
    1. Facebook App ID 필드의 Facebook 개발자 계정에서 앱 ID를 지정합니다.
    2. Google server ID 필드의 Google API 콘솔에서 웹 애플리케이션용 클라이언트 ID를 지정합니다.
    3. WeChat App ID의 WeChat 애플리케이션 설정에서 AppID를 지정합니다.
    4. QQ App ID의 QQ 애플리케이션 설정에서 AppID를 지정합니다.

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

Steam을 통한 네이티브 인증 설정 방법

네이티브 인증을 사용하면 플레이어가 설치된 Steam 애플리케이션을 통해 여러분의 애플리케이션으로 진입할 수 있습니다.

네이티브 인증 설정 방법:

  1. 게시자 계정에서 Steam을 통한 암묵 인증 설정.
  2. Unity 프로젝트 구성.
  3. 이벤트 처리 구성.
  4. Steam을 통한 인증 확인.

내 Unity 프로젝트 구성하기

  1. 수동 생성steam_appid.txt으로 파일을 만들고 Steam의 할당 ID를 거기에 입력합니다. 그리고, 이 파일을 여러분 프로젝트의 Assets 카탈로그
에 둡니다.

Note
GitHub에서 자산을 다운로드 받는 경우, steam_appid.txt 파일을 Assets 카탈로그에서 찾을 수 있습니다. 이 파일은 Steam 내에서의 애플리케이션 ID를 포함하고 있습니다.

  1. Unity 프로젝트를 엽니다.
  2. 메인 윈도우에서 Window > Xsolla > Edit Settings로 이동합니다.
  3. Inspector 창에서:
    1. Use Steam authorization 박스를.
    2. Steam App ID 필드에서 확인하고, 여러분 애플리케이션의 Steam ID를 명시합니다. 이 값은 steam_appid.txt 파일의 값과 같아야 합니다.

이벤트 처리 구성하기

Steam을 통해 사용자를 인증하려면, session ticketSteamAuth 메소드를 통해 받아야 합니다. 받은 값은 RequestTokenBy 메소드 호출 시 전달합니다. 그 결과로, API호출 시 쓰이는 토큰을 얻게 됩니다.

Steam을 통한 인증 확인

  1. 단독 플랫폼을 위한 Unity 프로젝트 빌드 생성.
  2. Steam 실행 후 로그인.
  3. 내 애플리케이션 실행. 만약 모든 것이 정상이면 Steam 팝업 창이 나타납니다.

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

토큰 무효화 설정 방법

토큰 무효화를 통해 여러분 애플리케이션 상의 사용자 인증 데이터의 보안을 개선할 수 있습니다. 옵션을 사용하는 경우, 매번 사용자 인증 시마다 새로운 토큰이 무효화 될 기존 토큰을 대체하게 됩니다.

Note
JWT 토큰을 사용하는 인증의 무효화를 구성할 수 있습니다. OAuth 2.0 인증의 경우, 토큰 무효화는 프로토콜 자체에서 제공되며 별도로 구성할 필요는 없습니다.

SDK 사용 시, 기존 토큰의 무효화 및 신규 토큰의 생성은 Auth by username and passwordAuth via social network API 호출을 호출하여 이루어지게 되는데, with_logout 매개변수 값이 1 인 경우에 한합니다.

Unity 프로젝트에서의 토큰 무효화 방법:

  1. 메인 메뉴에서Window > Xsolla > Edit Settings로 이동.
  2. Inspector 창에서, Enable JWT invalidation 체크박스를 활성화합니다.

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

런처를 통해 애플리케이션에서 권한 부여 설정 방법

엑솔라 런처를 사용하여 여러분의 애플리케이션을 사용자에게 전달하고 업데이트할 수 있습니다. 런처는 인증 도구를 내장하고 있습니다. 사용자 이름과 비밀번호의 재입력을 피하기 위하여 런처를 통하여 여러분 애플리케이션에서 인증하도록 설정하세요.

Notice
런처를 사용하려면 로그인을 구현해야 합니다. 다른 권한 부여 시스템을 사용하는 것은 지원되지 않습니다.

함께 작업하기 위한 SDK와 런처를 설정

  1. 런처 설정은 게시자 계정에서 합니다.

Note
config.json 파일에서, 다음 객체의 값을 바꾸는 것으로 충분합니다:
  • launcher_project_id런처 ID게시자 계정 > 런처 > 일반 설정 > 일반 정보에서 명시하며
  • login_project_id로그인 ID게시자 계정 > 런처 > 일반 설정 > 인증에서 명시합니다

  1. 런처 UI 맞춤 설정.

Notice
엑솔라 서버와 SDK 통합은 Commerce API 호출이 사용하므로 런처 스토어는 지원되지 않습니다.

  1. 런처 권한 부여 로직을 귀하의 애플리케이션에서 구현합니다.
  2. 런처 설치 파일 및 빌드 아카이브를 생성합니다.
  3. 애플리케이션 빌드를 생성합니다.
  4. 엑솔라 업데이트 서버에 애플리케이션 빌드를 업로드합니다.

런처를 통해 권한 부여 로직 구현

애플리케이션이 시작하면, 런처는 커맨드 라인을 통해 매개변수를 전달합니다. 인증 토큰은 xsolla-login-token 매개변수로 전달됩니다. 수신한 토큰을 검증합니다. 토큰 검증에 성공하면, 애플리케이션에서 사용자를 승인합니다.

기술된 로직 구현 사례는 데모 프로젝트에서 확인할 수 있습니다.

애플리케이션 빌드 만들기

  1. Unity 프로젝트로 이동합니다.
  2. Window > Xsolla > Edit Settings을 메인 메뉴에서 클릭합니다. Inspector 창에서:
    1. Project ID 필드에서 프로젝트 ID를 지정하는데, 이는 게시자 계정 > 프로젝트 설정 > 프로젝트 ID에서 찾을 수 있습니다.
    2. Login ID 필드에서 로그인 ID를 지정하는데, 이는 게시자 계정 > 런처 > 일반 설정 > 인증에서 찾을 수 있습니다.

  1. 토큰이 처리되고 있는 사용자 권한 부여 장면을 실행합니다.
  2. 메인 메뉴에서 File > Build settings을 클릭한 다음 Add Open Scenes을 클릭합니다. 권한 부여 장면이 목록에 첫 번째로 추가되었는지 확인합니다.
  3. Build를 클릭합니다.
  4. 팝업 창에서 완료된 빌드가 위치할 디렉터리로 가는 경로를 지정합니다.

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

답하기 원하지 않습니다

의견을 보내 주셔서 감사드립니다!
마지막 업데이트: 2021년 6월 17일

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

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