認証

一般情報

ユーザーのログインと登録のためのソリューションは、ログイン製品をベースにしています。プロジェクトの認証設定は、パブリッシャーアカウントログインセクションで行います。

JWT標準ベース認証およびOAuth2.0プロトコルベース認証

OAuth 2.0プロトコルは、クライアントアプリケーションの開発しやすさに重点を置いています。OAuth 2.0では、ユーザーの介入なしにトークンを更新することができます。JWT認証では、トークンを更新するために、ユーザーは資格情報を入力し、アプリケーションにログインする必要があります。

OAuth 2.0はおすすめの認証方法であり、デフォルトでSDK設定で選択されています。詳しくは、OAuth 2.0認証のセットアップ方法をご覧ください。

アプリケーションでJWT認証を使用する場合、トークンを無効化するをお勧めします。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

ユーザー名/メールアドレスとパスワードによるクラシックログイン

ユーザー名またはメールアドレスでユーザーを認証することができます。

サインアップの際、ユーザー名で認証を行う場合でも、メールアドレスの指定が必要です。このメールアドレスは、サインアップの確認とパスワードのリセットに使用されます。

登録に成功すると、ユーザーは指定したアドレスに登録確認メールを受け取ります。パブリッシャーアカウントで、ユーザーに送られるメールはカスタマイズできます。

Note
お客様のセキュリティ基準で許可されている場合は、電子メールアドレスによる登録確認を無効にすることができます。無効にするには、アカウントマネージャーに連絡するか、am@xsolla.comまでご連絡ください。
この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

ソーシャルログイン

ソーシャルログインは、アプリケーションの主要な認証方法として、または代替の認証方法として使用することができます。

ユーザーの初回ログインがソーシャルネットワーク経由の場合、新しいアカウントが自動的に作成されます。

代替の認証方法としてソーシャルログインを使用する場合、以下の条件を満たすと、ソーシャルネットワークのアカウントは自動的に既存のユーザーアカウントに紐付けられます:

  • ユーザー名/メールアドレスとパスワードでサインアップしたユーザーが、ソーシャルネットワークアカウントを介してアプリケーションにログインしました。
  • ソーシャルネットワークでは、メールアドレスを返します。
  • ソーシャルネットワークでのユーザーのメールアドレスは、アプリケーションで登録に使用したメールアドレスと同じです。

SDKは、ソーシャルログインのために以下のプロバイダーをサポートしています:

  • Amazon
  • Apple
  • Baidu
  • Battle.net
  • Discord
  • Facebook
  • GitHub
  • Google
  • Kakao
  • LinkedIn
  • MSN
  • Mail.ru
  • Microsoft
  • Naver
  • Odnoklassniki
  • PayPal
  • QQ
  • Reddit
  • Steam
  • Twitch.tv
  • Twitter
  • VK
  • Vimeo
  • WeChat
  • Weibo
  • Xbox Live
  • Yahoo
  • Yandex
  • YouTube

モバイルアプリケーションの場合、SDKはユーザーの端末でソーシャルネットワーククライアントを介したソーシャルログイン(ソーシャルネットワークを介したネイティブ認証)にも対応しています。現在、SDKは以下のプロバイダーをネイティブ認証に対応しています:

  • Google
  • Facebook
  • WeChat
  • QQ

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

アプリケーションランチャー経由の認証

エクソラランチャーやSteamを使用してユーザーにアプリケーションを配信する場合、ランチャーの認証情報を使って自動的にユーザー認証を行うことができます。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

デバイスIDによる認証

デバイスID認証は、ユーザーが登録データを入力することなく、モバイルデバイスでアプリケーションを使い始めることを可能にします。ユーザーが初めてデバイスIDを使ってアプリケーションにログインすると、新しいアカウントが自動的に作成され、ユーザー名やメールアドレスなどを入力する必要がありません。SDKは、AndroidおよびiOSのモバイル端末のIDによる認証に対応しています。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

パスワードレスログイン

アプリケーションでユーザーを認証するには、パスワードの代わりにワンタイムコードを使用するか、ワンタイムリンクをたどることができます。コードやリンクは、SMSやメールで送信することができます。
この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

プライバシーポリシー

SDKを使用する場合は、エクソラ個人情報保護方針契約のリンクをアプリケーションに追加してください。このリンクの例は、サインアップページのデモプロジェクトで見ることができます。

Note
エクソラ個人情報保護方針契約は、ユーザーデータが使用されることを意味するものではないことにご注意してください。このタイプのデータを収集して処理する予定がある場合は、行動が法律に準拠していることを確認してください。ユーザーのデータを収集して処理する許可をユーザーに求めるか、個人情報保護方針同意書についてユーザーに通知する必要があります。

ハウツー

高度な設定については、ハウツーをご覧ください。

OAuth 2.0認証をセットアップする方法

OAuth 2.0では、長持ちするトークンの代わりに、短命のトークンを使用しています(リフレッシュトークン)。リフレッシュトークンを使用することで、ユーザーはユーザー名とパスワードを再入力することなく、長期間アプリケーションに滞在することができます。これにより、ユーザー認証データが危険にさらされるリスクがなくなります。

認証用にOAuth 2.0を設定するには:

  • ユーザー名またはメールとパスワード経由
  • ソーシャルネットワーク経由
  • Steam経由

オプションが有効な場合、ユーザー登録と認証は、Register new userおよびJWT auth by username and password APIコールを呼び出すことによって実行されます。SKDは、OAuth 2.0認証のために、JWTトークン認証と同様の方法を提供します。

Note
この設定を有効にしても、アプリケーションでのユーザーの認証プロセスは変わりません。

OAuth 2.0認証を設定するには:

  1. パブリッシャーアカウントでログインプロジェクトのOAuth 2.0認証をセットアップします。
  2. Unityプロジェクトでアセットをセットアップします。

パブリッシャーアカウントでログインプロジェクトのOAuth 2.0認証を設定する

  1. パブリッシャーアカウントに移動します。
  2. サイドメニューでログインをクリックします。
  3. ログインプロジェクトペインで構成するをクリックします。
  4. セキュリティブロックに移動してOAuth 2.0セクションを選択します。
  5. OAuth 2.0を追加するをクリックします。
  6. OAuth 2.0リダイレクトURIを指定して接続するをクリックします。
  7. クライアントIDをコピーして保存します。

Unityプロジェクトでアセットをセットアップする

  1. Unityプロジェクトに移動します。
  2. メインメニューでWindow > Xsolla > Edit Settingsをクリックします。
  3. Inspectorパネルで:
    1. Authorization TypeフィールドでOAuth2.0を選択します。
    2. OAuth2.0 client IDフィールドで、パブリッシャーアカウントでOAuth 2.0を設定するときに受信したクライアントID を指定します。

更新トークンを操作するために、SDKには次のメソッドが実装されています:

  • RefreshOAuthToken — 以前保存されたOAuth2.0更新トークンを使用して既存のトークンを更新します。
  • ExchangeCodeToToken — ユーザーの認証コードを有効なJWTと交換します。

GetSocialNetworkAuthUrlメソッドにあるoauthState引数は、OAuth 2.0認証時の追加のユーザ検証に使用されます。この引数は、CSRF 攻撃の可能性を軽減するために使用されます。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

独自の認証システムの使い方

本SDKは、お客様独自の認証システムと統合することができます。そのためには、カスタムID(サーバーで生成したユーザーID)によるユーザー識別を実装し、ゲーム内ストアの開設、決済、インベントリ管理などを行います。

独自の認証システムを使用する場合のエクソラサーバーとのインタラクションのフローは以下の通り:

  1. クライアントは、サーバーに認証リクエストを送信します。
  2. サーバーはユーザーを認証し、エクソラサーバーにユーザーJSONウェブトークン(JWT)を受け取るリクエストを送信し、カスタムIDを渡します。
  3. エクソラサーバーはユーザーJWTを返します。
  4. サーバーは、ユーザーJWTをクライアントに渡します。
  5. SDKメソッドでは、受け取ったユーザーJWTを認証トークンを代用として、ゲーム内ストアの開設、決済、インベントリ管理を行います。

エクソラ製品で独自の認証システムを使用するには:

  1. パブリッシャーアカウントでサーバーOAuth 2.0クライアントをセットアップします。
  2. サーバーJWTの取得を実装します。
  3. ユーザーJWTの取得を実装します。
  4. ユーザーJWTを使用して、ゲーム内ストア、購入、インベントリを操作するロジックを実装します。

Note
PlayFabまたはFirebaseの認証システムを使用している場合は、BaaSInsert用のエクソラ既製エクステンションを使用してユーザーJWTを取得します。

サーバーOAuth 2.0クライアントをセットアップする

  1. パブリッシャーアカウントでプロジェクトを開き、ログインセクションに移動します。
  2. ログインプロジェクトのパネルでの構成するをクリックします。
  3. セキュリティブロックに移動してOAuth 2.0セクションに移動します。
  4. OAuth 2.0を追加するをクリックします。
  5. OAuth 2.0のリダイレクトURIを指定します。
  6. サーバー(サーバー・トゥ・サーバー接続)チェックボックスを入ります。
  7. 接続をクリックします。
  8. クライアントIDと秘密鍵をコピーして保存してください。

サーバーJWTを取得する

アプリケーションのバックエンドで、JWTを生成するAPIコールを使用してサーバーJWTを取得するメソッドを実装します。リクエストには、以下のパラメータを含める必要があります:

Note
サーバーJWTの有効期限は59分です。

ユーザーJWTを取得する

アプリケーションのバックエンドで、custom IDによる認証APIコールを使用してユーザーJWTを取得するメソッドを実装します。リクエストはX-Server-Authorization: <server_JWT>ヘッダーを含まなければなりません。ここで、<server_JWT>前のステップで取得したサーバーJWTです。

Note
ユーザーJWTの有効期限は24時間です。変更するには、アカウントマネージャに連絡するか、integration@xsolla.comにメールを送信してください。

ユーザーJWTを使用する

SDKメソッドを使用して、ゲーム内ストアの開設、決済、インベントリ管理を行います。SDKメソッドを使用している際に、ユーザーJWTをToken.Instanceプロパティに渡します。

以下のチュートリアルでは、トークンの使用例を紹介しています:

期限切れ後に新しいユーザーJWTを受け取るためのロジックを実装します。ユーザーがアプリケーションに再度ログインする必要がないように、バックグランドモードで新しいトークンを取得することをお勧めします。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

ソーシャルネットワーク経由でネイティブ認証を設定する方法

ネイティブ認証は、ユーザーがモバイルデバイスに設定されたソーシャルネットワークアカウントを介してアプリケーションにログインすることを可能にします。

ユーザーが初めてログインすると、ソーシャルネットワーキングアプリケーションが起動し、ユーザー認証の許可を求めます。その後は、ユーザーが何もしなくても自動的に認証が行われます。

現在、SDKは以下のソーシャルネットワーク経由のネイティブ認証を実装しています:

  • Google
  • Facebook
  • WeChat
  • QQ

ネイティブ認証を設定するには:

  1. Android用のUnityプロジェクトビルドを作成します。
  2. ソーシャルネットワークの開発者アカウントでアプリケーションの設定を行います:
    1. Facebookによる認証の場合:
      1. 登録して、新しいアプリケーションを作成します。
      2. Facebook開発者アカウントで、アプリケーションページを設定します。
    2. Googleによる認証の場合:Google API Consoleでプロジェクトを設定します。
    3. WeChatによる認証の場合:
      1. 登録して、新しいアプリケーションを作成します。
      2. 審査のためにアプリケーションを提出してください。
    4. QQによる認証の場合:
      1. 登録して、新しいアプリケーションを作成します。
      2. 審査のためにアプリケーションを提出してください。

  1. エクソラ側でソーシャルネットワークによる認証を設定します:
    1. FacebookとGoogleの場合は、パブリッシャーアカウントでソーシャルコネクションを設定します。
    2. WeChatとQQの場合は、あなたのアカウントマネージャーをお問い合わせてください。
  2. Unityプロジェクトのアセットを設定します。

Android用Unityプロジェクトビルドを作成する

  1. Unityプロジェクトに移動します。
  2. メインメニューでFile > Build settingsをクリックします。
  3. PlatformパネルでAndroidをクリックします。
  4. Buildをクリックします。

ネイティブ認証の設定に関する詳細については、以下のものが必要です:

  • File > Build settingsAndroidプラットフォームを選択後、Inspectorパネル内のPackage Nameフィールドで見つかったパッケージ名。
  • Androidクラス名 — アプリケーションの名前空間(例:com.domain.appname.activity)を含む、主活動のクラス名。クラス名はAndroidManifest.xmlで確認することができます。主活動のタグには、アクションandroid.intent.action.MAINとカテゴリーandroid.intent.category.LAUNCHERを持つintent-filterタグが必要です。
  • Androidハッシュキー。OpenSSLで取得することができます。

Facebook開発者アカウントでアプリケーションページをセットアップする

  1. Facebook開発者アカウントのプロジェクト設定に移動します。
  2. 設定 > 基本に移動します。
  3. プラットフォームを追加をクリックし、Androidを選択します。
  4. Google Playパッケージ名フィールドでUnityプロジェクトのパッケージ名を指定します。
  5. クラス名フィールドでUnityプロジェクトのAndroidクラス名を指定します。
  6. キーハッシュフィールドでUnityプロジェクトのハッシュキーを指定します。
  7. 変更内容を保存をクリックします。

さらにネイティブ認証の設定を行うには、設定 > 基本セクションのプロジェクト設定にあるアプリIDアプリシークレットが必要です。

Google API Consoleでプロジェクトをセットアップする

  1. Google API Consoleに移動します。
  2. 新しいプロジェクトをクリックします。
  3. プロジェクト名場所を指定して保存するをクリックします。
  4. 作成したプロジェクトに移動してサイドメニューでのOAuth同意画面をクリックします。
  5. 外部オプションを選択して作成するをクリックします。
  6. 必要なパラメータを指定して、保存をクリックします。サイドメニューで
  7. 資格情報をクリックします。
  8. Unityアプリ用のOAuth 2.0クライアントを作成します:

    1. 資格情報を作成をクリックして、OAuthクライアントIDを選択します。
    2. アプリケーションタイプフィールドでAndroidを指定します。
    3. 名前を指定します。
    4. パッケージ名フィールドでUnityプロジェクトのパッケージ名を指定します。
    5. SHA-1証明書のフィンガープリントフィールドでUnityプロジェクトのAndroidハッシュキーを指定します。
    6. 作成をクリックします。
    7. OKをクリックします。

  1. Webアプリケーション用のOAuth 2.0クライアントを作成します:
    1. 資格情報を作成するをクリックして、OAuthクライアントIDを選択します。
    2. アプリケーションタイプフィールドでウェブアプリケーションを指定します。
    3. 名称を指定します。
    4. 許可されたリダイレクトURIセクションでURIを追加するをクリックして、 https://login.xsolla.com/api/social/oauth2/callback URIを指定します。
    5. 作成するクリックします。
    6. OKクリックします。

さらにネイティブ認証の設定を行うには、ウェブアプリケーションのクライアントIDの設定にあるクライアントIDクライアントシークレットが必要です。

エクソラパブリッシャーアカウントでログインプロジェクトのソーシャルコネクションを設定します

  1. パブリッシャーアカウントでプロジェクトを開きます。
  2. サイドメニューのログインをクリックし、ログインプロジェクト > ログインプロジェクト > ソーシャル接続に移動します。
  3. Facebook経由で認証を設定するには:

    1. Facebookパネルで編集するをクリックしてステータスを切断済みを変更します。
    2. アプリケーションIDフィールドでのFacebook開発者アカウントからアプリIDを指定します。
    3. アプリケーションシークレットフィールドでのFacebook開発者アカウントからアプリシークレットを指定します。
    4. 接続するをクリックします。

  1. Google経由で認証を設定するには:
    1. Googleパネルで編集するをクリックしてステータスを切断済みを変更します。
    2. アプリケーションIDフィールドでのGoogle API ConsoleからクライアントIDを指定します。
    3. アプリケーションシークレットフィールドでのGoogle API Consoleからクライアントシークレットを指定します。
    4. 接続するをクリックします。

Unityプロジェクトのアセットをセットアップする

  1. Unityプロジェクトに移動します。
  2. メインメニューでWindow > Xsolla > Edit Settingsをクリックします。
  3. アプリケーションIDを指定します:
    1. Facebook App IDフィールドでのFacebook開発者アカウントからアプリIDを指定します。
    2. Google server IDフィールドでのGoogle API ConsoleからウェブアプリケーションのクライアントIDを指定します。
    3. WeChat App IDAppIDをWeChatアプリケーションの設定から指定します。
    4. QQ App IDAppIDをQQアプリケーションの設定から指定します。

    この記事は役に立ちましたか?
    ありがとうございます!
    改善できることはありますか? メッセージ
    申し訳ありません
    この記事が参考にならなかった理由を説明してください。 メッセージ
    ご意見ありがとうございました!
    あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
    非表示

Steam経由でネイティブ認証を設定する方法

Notice
Unityのプロジェクトにデモプロジェクトを組み込んだ場合は、このハウツーガイドをご利用ください。

ネイティブ認証により、プレーヤーはインストールされたSteamアプリケーションを介してアプリケーションに入ることができます。

ネイティブ認証を設定するには:

  1. パブリッシャーアカウントでStreamを介してサイレント認証をセットアップします。
  2. Unityプロジェクトを構成します。
  3. イベントの処理を構成します。
  4. Steamを介して認証を確認します。

Unityプロジェクトを構成する

  1. steam_appid.txtファイルを作成し、SteamにアプリケーションIDを入力します。次に、このファイルをプロジェクトのAssets/Plugins/Steamworks.NET/redist/カタログに配置します。

Note
GitHubからSDKをダウンロードした場合、Assets/Plugins/Steamworks.NET/redist/カタログにsteam_appid.txtファイルがあります。このファイルには、デモプロジェクトのSteamのアプリケーションIDが含まれています。

  1. Unityプロジェクトを開きます。
  2. メインメニューで、Window > Xsolla > Demo Settingsに移動します。
  3. Inspectorパネルで:
    1. Use Steam authorizationボックスをチェックします。
    2. Steam App IDフィールド、SteamでアプリケーションIDを指定します。この値は、steam_appid.txtファイルの値と同じである必要があります。

イベントの処理を構成する

Steam経由でユーザー認証を行うためにはsession ticketSilentAuth型にパスします。例えば、 デモプロジェクトSteamAuth.csを表示します。

Steamによる認証を確認する

  1. スタンドアロンプラットフォーム用のUnityプロジェクトのビルドを作成するか、シーンを開始します。
  2. Steamを起動してログインします。
  3. アプリケーションを起動します。すべてが正しければ、Steamポップアップウィンドウが表示されます。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

トークン無効化の設定方法

トークンの無効化により、アプリケーション内のユーザー認証データのセキュリティを向上させることができます。このオプションを有効にすると、ユーザーが認証を行うたびに無効になる古いトークンが新しいトークンに置き換わります。

Note
JWTトークンを使用する認証では、トークン無効化を設定することができます。OAuth 2.0認証の場合、トークン無効化はプロトコル自体が提供するものであり、別途設定する必要はありません。

SDKを利用する場合、with_logoutパラメータが1に設置すると、Auth by username and passwordAuth via social networkのAPIコールを呼び出すことで、既存のトークンの無効化と新しいトークンの生成を行います。

Unityプロジェクトでトークン無効化を有効にするには:

  1. メインメニューで、Window > Xsolla > Edit Settingsに移動します。
  2. Inspectorパネルに行きます。Authorizaton TypeフィールドでJWTを選択します。Invalidate Existing Sessionsチェックボックスをオンにします。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

ランチャー経由でアプリケーションに認証を設定する方法

エクソラランチャーを使用して、アプリケーションをユーザーに配信したり、更新したりすることができます。ランチャーには認証ツールが組み込まれています。ユーザー名とパスワードを再入力する必要がないように、ランチャーを介してアプリケーションの認証を設定します。

Notice
ランチャーを使用するには、ログインの設定が必要です。別の認証システムを使用することはサポートされていません。

SDKとランチャーを連携するためにセットアップする

  1. パブリッシャーアカウントでランチャーをセットアップします。

Note
config.jsonファイルで、以下のオブジェクトの値を変更するだけで十分です:
  • launcher_project_idパブリッシャーアカウント > ランチャー > 一般設定 > 一般情報にあるランチャーIDを指定します。
  • login_project_idパブリッシャーアカウント > ランチャー > 一般設定 > 認証にあるログインIDを指定します

  1. ランチャーのUIをカスタマイズします

Notice
エクソラサーバーとのSDKの統合は、Commerce APIコールを使用しているため、ランチャーストアはサポートされていません。

  1. あなたのアプリケーションのランチャー認証ロジックを実装します。
  2. ランチャーインストールファイルとビルドアーカイブを生成します
  3. アプリケーションのビルドを作成します
  4. アプリケーションのビルドをエクソラアップデートサーバーにアップロードします

ランチャーによる認証ロジックを実装する

ランチャーによるアプリケーションでの認証の流れは以下の通り:

  1. ユーザーはランチャーで認証されています。
  2. ユーザーはアプリケーションをインストールして実行します。
  3. ランチャーは、アプリケーションを実行し、コマンドラインでユーザーのパラメータを渡します。認証トークンは、xsolla-login-tokenパラメータで渡されます。
  4. アプリケーションは、コマンドラインパラメーターを処理し、トークンを取得します。トークン処理スクリプトの例は、デモプロジェクトで見ることができます。
  5. アプリケーションは受信したトークンを検証します。トークン検証スクリプトの例は、デモプロジェクトで見ることができます。
  6. アプリケーションは、認証ページを表示することなく、自動的にユーザーを認証します。ユーザー認証スクリプトの例は、デモプロジェクトで見ることができます。

Note
取得したトークンは、SDKメソッドでゲーム内ストアの開設や決済などに使用されます。トークンをToken.Instanceの属性に渡します。

アプリケーションのビルドを作成する

  1. Unityプロジェクトに移動します。
  2. メインメニューでWindow > Xsolla > Edit Settingsをクリックします。IInspectorパネルで:
    1. Project IDフィールドで、パブリッシャーアカウント > プロジェクト設定 > プロジェクトIDにあるプロジェクトIDを指定します。
    2. Login IDフィールドで、パブリッシャーアカウント > ランチャー > 一般設定 > 認証にあるログインIDを指定します。

  1. トークンが処理されるユーザー認証シーンを実行します。
  2. メインメニューでFile > Build settingsをクリックし、そしてAdd Open Scenesをクリックします。認可シーンがリストの最初に追加されていることを確認してください。
  3. Buildをクリックします。
  4. ポップアップウィンドウで、完成したビルドが置かれるディレクトリへのパスを指定します。

この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示

デバイスIDによるユーザー認証を実現する方法

デバイスID認証は、ユーザーが登録データを入力することなく、モバイルデバイスでアプリケーションを使い始めることを可能にします。ユーザーが初めてデバイスIDを使ってアプリケーションにログインすると、新しいアカウントが自動的に作成され、ユーザー名やメールアドレスなどを入力する必要がありません。

Notice
デバイスIDで作成されたアカウントは、現在使用しているモバイルデバイスでのみアプリケーションを使用することができ、AndroidやiOSのデバイスを変更したり、iOSデバイスでアプリケーションをアンインストールしたりすると、アクセスできなくなります。アプリケーションの進捗状況を保存し、他のデバイスで使用するには、ソーシャルネットワークのリンク、またはユーザー名、メールアドレス、パスワードを入力してアカウントをアップグレードします。

デバイスIDを使用すると、バックグラウンドモードで1台または複数のモバイルデバイスにユーザー認証を実装することができます。この機能を利用するには、ユーザーはデバイスIDを既存のアカウントにリンクさせる必要があります。

本SDKは、AndroidおよびiOSのモバイルデバイスのIDによる認証に対応しています。

デバイスIDを取得する

デバイスIDは、プラットフォームによって生成され、モバイルデバイスにインストールされたアプリケーションが利用できます。SDKはプラットフォームのAPIを使ってIDの値を取得し、この値を使ってエクソラAPIを使って様々な機能を実行します。

iOSデバイスのIDは、UIDevice.identifierForVendorプロパティで渡されます。IDの決定には、Unityの標準メソッドであるSystemInfo.deviceUniqueIdentifierが使用されます。

AndroidデバイスIDは、android.provider.Settings.Secure.ANDROID_ID定数で渡されます。Unityの標準的なメソッドでは、AndroidデバイスのIDがMD5ハッシュとして返されますが、これはXsolla APIの呼び出しには不適切であるため、SDKでは独自のロジックでIDを決定しています。

SDKメソッド

本SDKは以下の機能のメソッドを実装しています:

認証

SDKメソッドの名称説明
AuthViaDeviceID
現在のデバイスIDを使って、ユーザーをアプリケーションに認証します。

アカウントアップグレード

SDKメソッドの名称説明
AddUsernameEmailAuthToAccount
現在のアカウントに、認証に使用できるユーザー名、メールアドレス、パスワードを追加します。
認証に使用できるソーシャルネットワークを現在のアカウントにリンクします。
Notice
リストされたメソッドは、任意の利用可能な方法で作成されたアカウントをアップグレードするために使用することができます(例:ソーシャルネットワークを使用したり、電子メールアドレスとパスワードを使用したり)。

デバイス管理

SDKメソッドの名称説明
GetUserDevices
現在のユーザーアカウントにリンクされているデバイスのリストを返します。
指定されたデバイスを現在のユーザーアカウントにリンクします。
指定されたデバイスを現在のユーザーアカウントからリンク解除します。
この記事は役に立ちましたか?
ありがとうございます!
改善できることはありますか? メッセージ
申し訳ありません
この記事が参考にならなかった理由を説明してください。 メッセージ
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。
非表示
最終更新日: 2022年6月6日

誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。

問題を報告する
当社は常にコンテンツを見直しています。お客様のご意見は改善に役立ちます。
フォローアップ用のメールをご提供してください
ご意見ありがとうございました!