ユーザー認証をセットアップする
認証されたユーザーは、ウェブショップで商品を購入したり、カタログでユニークなオファーを見ることができます。
認証付きウェブショップの主な機能:
- ウェブショップでの複数の認証方法。
- パーソナライズされたストアフロントと正規ユーザー用のプロモコードを設定することができます。
- 個人情報の保護と処理に関する地域の法令を遵守します。
- レート制限とDDoS対策。
以下の認証方法のいずれかを選択することができます:
- ユーザーID認証:
- ウェブショップとゲームとの連携を簡略化します。
- ユーザーID認証ウィジェットでは、登録やパスワードの入力が不要で、ゲームやソーシャルネットワークのユーザーIDを利用してゲームにログインすることができます。
- エクソーラログインによる認証:
- 幅広い認証方法を提供します:ソーシャルネットワーク、ワンタイムコードやリンク、ログインとパスワード。
- エクソーラログインウィジェットをカスタマイズできます。
- 認証に年齢制限を課すことができます。
ユーザーフロー
- ユーザーは、ユーザーID認証を設定済みのウェブショップに移動します。
- ユーザーは、選択した項目の下にある今すぐ購入またはトップバーのログインをクリックします。
- モーダルウィンドウが開き、ユーザーがIDを入力するか、ソーシャルネットワークを選択するよう要求されます。

- ユーザーは、ユーザーIDを入力して続行するをクリックするか、ソーシャルネットワークのアイコンをクリックしてソーシャルネットワークを選択し、ソーシャルネットワークのページで認証を完了します。
- ゲーム内にユーザーが存在するかどうかを確認します。このIDまたはソーシャルアカウントを持つユーザーがゲーム内に存在する場合、そのユーザーはウェブショップで認証されます。それ以外の場合は、エラーメッセージが表示されます。
入手方法
- アプリケーション側では、ユーザー認証ウェブフック処理を実装してください。
ウェブフックを受信した場合、アプリケーションは以下の処理を行う必要があります:
- ウェブフックで渡されたIDでユーザーを検索します。
- その結果に応じて、以下のいずれかのステータスコードを送信します。
- 200 HTTP - ユーザーが見つかった場合のウェブフックからの応答を含むコード
- 404 HTTP - ユーザー IDが見つからない場合のコード
- パーソナライズのためのユーザー属性を送信します。
- アドミンページでプロジェクトを開きます。
- サイドバーで「サイトビルダー」と移動します。
- 「サイトビルダーを開く」をクリックします。
- 「サイトビルダーを開く」をクリックします。
- 「ログイン設定」ブロックに移動します。
- 「ユーザーID」オプションを選択します。
- ドロップダウンリストで、「新規ログイン」を選択します。
- ウェブフックを受信するURLを入力します。
https://
で始まる必要があります。http://
を使用するとエラーになります。- アプリケーションにすでに接続されているソーシャル ネットワーク経由で認証を設定します(任意):
- アドミンページでプロジェクトを開き、ログインセクションに移動します。
- サイドバーで構成をクリックします。
- 認証ブロックに移動してソーシャルログインを選択します。
- ソーシャルネットワークを設定するには、ソーシャルネットワークカードで、タイトルの右にある⚙アイコンをクリックし、接続を選択します。
入手方法
- サイトのビルダーで、ログイン設定ブロックに移動します。
- エクソーラログインの認証オプションを選択します。
- ドロップダウンリストで、新規ログインを選択します。
その結果、メールアドレスとパスワードによるユーザー認証を行うログインプロジェクトが自動的に作成されます。作成されたログインプロジェクトでは、以下の場合にユーザーがリダイレクトされるコールバックURLとして、ウェブショップURLが指定されます:
- 認証成功後
- メール確認が完了した後
- パスワードリセット後
- 認証失敗の場合
ウェブショップのドメインを変更すると、ログインプロジェクト設定のコールバックURLが自動的に変更されます。
- モーダルウィンドウからログインプロジェクトの設定に移動するか、エクソーラログインブロックの認証方式をセットアップするをクリックします。
ウェブショップでの認証には、アプリケーションでの認証と同じソーシャルネットワークをセットアップします。ソーシャルネットワークが設定されていない場合、メールアドレスとパスワードによるユーザー認証が可能になります。
ソーシャルネットワーク経由でウェブショップで認証を設定する場合は、アプリケーションでの認証と同じアプリケーションIDとアプリケーションシークレットを使用します。

- ユーザーデータストレージを接続します。
ユーザーデータの保存方法によって、利用できる製品の機能が異なります(ユーザーデータの保存方法の比較を参照してください)。
エクソーラストレージ
ログイン製品にすべての認証ロジックを処理させたい場合は、エクソーラストレージに接続します。より柔軟な設定が可能になります。
ログインプロジェクトを作成すると、エクソーラストレージがデフォルトで接続され、追加の設定手順は必要ありません。デフォルトのストレージタイプを変更し、エクソーラストレージに再接続する必要がある場合は、次の手順に従います:
- ナビゲーションページで、ユーザーデータベースブロックに移動してストレージセクションを選択します。
- エクソーラストレージを選択して変更内容を保存するをクリックします。
PlayFabストレージ
PlayFabの機能を使ってユーザーと連携したい場合は、PlayFabのストレージを接続します。ストレージには以下のユーザーデータが保存されます:
- ユーザー名
- ユーザーのメールアドレス
- ユーザーパスワード
- フォームが設定されている場合は、拡張登録フォームのフィールド
PlayFabストレージでは、以下の機能を利用できます:
- ユーザー登録
- メールアドレスまたはユーザー名とパスワードによる認証
- Twitchによる認証
- ユーザーパスワードのリセット
- ユーザーブロッキング
ストレージを接続するには:
- ナビゲーションページで、ユーザーデータベースブロックに移動してストレージセクションを選択します。
- PlayFabを選択します。
- タイトルIDフィルドには、Firebaseアカウントから同じフィールドの値を入力してください。
- 変更内容を保存するをクリックします。
Firebaseストレージ
Firebaseの機能を使用してユーザーと連携する場合は、Firebaseストレージを接続します。このストレージには、以下のユーザーデータが保存されます:
- ユーザー名
- ユーザーメールアドレス
- ユーザーパスワード
- フォームが設定されている場合は拡張登録フォームからのフィールド
ストレージを接続するには:
- ナビゲーションページで、ユーザーデータベースブロックに移動してストレージセクションを選択します。
- Firebaseを選択します。
- APIキーフィルドには、Firebaseアカウントから同じフィールドの値を入力してください。
- 変更内容を保存するをクリックします。
カスタムストレージ
独自の認可システムを使用し、アプリケーション側でユーザーデータを保存する場合は、カスタムストレージに接続します。
カスタムストレージを使用する場合、次の機能にアクセスできます:
- ユーザー登録
- メールアドレスまたはユーザー名とパスワードによる認証
- 電話番号によるパスワードレス認証
- ソーシャルネットワークによる認証
- ユーザーパスワードのリセット
エクソーラログインサーバーと御社のアプリケーション(クライアント)との接続を設定するには:
カスタムストレージを接続する
- ナビゲーションページで、ユーザーデータベースブロックに移動してストレージセクションを選択します。
- カスタムストレージを選択します。
- APIリクエストの送信先のURLを入力します:
- 変更内容を保存するをクリックします。
- 設定したURLに対して、以下のように応答するAPIを実装します:
- リクエストに成功した場合のHTTP 200 / HTTP 204。必要であれば、追加のユーザーデータを含むJSONを応答本文に配置することができます。渡されたデータはJWTに書き込まれます(
partner_data
パラメータ)。 - その他、リクエストに失敗した場合のHTTPステータスコード。
- リクエストに成功した場合のHTTP 200 / HTTP 204。必要であれば、追加のユーザーデータを含むJSONを応答本文に配置することができます。渡されたデータはJWTに書き込まれます(
- データベースのユーザーIDを含んだJWTが必要な場合は、カスタマーサクセスマネージャーまでお問い合わせるか、csm@xsolla.comに電子メールを送信してください。
- 電話番号を使用したパスワードレス認証が正しく動作するためには、APIの応答にクライアントのユーザーIDと一致す
account_id
パラメータが含まれている必要があります。
エクソーラログインサーバーからのリクエストの処理をセットアップする
Authorization: Bearer <JWT>
ヘッダーがあるエクソーラログインサーバーのリクエストはご希望のURLに送信されます。JWTはプロジェクトの秘密鍵で署名されています。
リクエストを処理するには:
- 受信したJWTを検証します。
- 検証が成功した場合は、JWTをデコードし、以下の表のクレームが含まれていることを確認します。デコーディングのためのライブラリーを探して利用します。
クレーム | 種類 | 説明 |
---|---|---|
exp | Unix Timestamp | JWTの有効期限の日時。JWTの存続時間は7分です。 |
iat | Unix Timestamp | JWTが発行された日時。 |
iss | string | JWTに署名したサービスhttps://login.xsolla.com 。 |
request_type | string | 定数:gateway_request 。 |
xsolla_login_project_id | string(UUID) | アドミンページの御社のログインプロジェクトID。 |
トークンペイロードの例:
- json
{
"exp": 1573635020,
"iat": 1573634600,
"iss": "https://login.xsolla.com",
"request_type": "gateway_request",
"xsolla_login_project_id": "00000000-0000-0000-0000-000000000000"
}
次のステップ
お役立ちリンク
この記事は役に立ちましたか?
このページを評価する
答えたくない
ご意見ありがとうございました!
誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。