Custom ID経由の認証
エクソーラ側でカスタムID(サーバーで生成したユーザーID)を使ってユーザーを認証することができます。
この認証オプションにより、以下のことが可能になります:
カスタムIDによるユーザー認証を行うには、アプリケーションのバックエンドにカスタムIDによる認証APIコールを実装する必要があります。このコールにより、ユーザーJSONウェブトークン(JWT)が返されます。これは、支払いを行い、インベントリを管理するためのSDKメソッドで認証トークンとして使用できます。
LogoutUser
SDKメソッドを使用します。ハウツー
本SDKは、お客様独自の認証システムと統合することができます。そのためには、カスタムID(サーバーで生成したユーザーID)によるユーザー識別を実装し、インゲームストアの開設、決済、インベントリ管理などを行います。
独自の認証システムを使用する場合のエクソーラサーバーとのインタラクションのフローは以下の通り:
- クライアントは、サーバーに認証リクエストを送信します。
- サーバーはユーザーを認証し、エクソーラサーバーにユーザーJSONウェブトークン(JWT)を受け取るリクエストを送信し、カスタムIDを渡します。
- エクソーラサーバーはユーザーJWTを返します。
- サーバーは、ユーザーJWTをクライアントに渡します。
- SDKメソッドでは、受け取ったユーザーJWTを認証トークンを代用として、インゲームストアの開設、決済、インベントリ管理を行います。
エクソーラ製品で独自の認証システムを使用するには:
- アドミンページでサーバーOAuth 2.0クライアントをセットアップします。
- サーバーJWTの取得を実装します。
- ユーザーJWTの取得を実装します。
- ユーザーJWTを使用して、インゲームストア、購入、インベントリを操作するロジックを実装します。
サーバーOAuth 2.0クライアントをセットアップする
- アドミンページでプロジェクトを開き、ログインセクションに移動します。
- ログインプロジェクトのパネルでの構成するをクリックします。
- セキュリティブロックに移動してOAuth 2.0セクションに移動します。
- OAuth 2.0を追加するをクリックします。
- OAuth 2.0のリダイレクトURIを指定します。
- サーバー(サーバー・トゥ・サーバー接続)チェックボックスを入ります。
- 接続をクリックします。
- クライアントIDと秘密鍵をコピーして保存してください。
サーバーJWTを取得する
アプリケーションのバックエンドで、JWTを生成するAPIコールを使用してサーバーJWTを取得するメソッドを実装します。リクエストには、以下のパラメータを含める必要があります:
grant_type
はJWTタイプで、client_credentials
の値を渡します。client_secret
は、サーバーOAuth 2.0クライアントをセットアップする際に受け取る秘密鍵です。client_id
は、サーバーOAuth 2.0クライアントをセットアップする時に受け取ったクライアントIDです。
ユーザーJWTを取得する
アプリケーションのバックエンドで、custom IDによる認証APIコールを使用してユーザーJWTを取得するメソッドを実装します。リクエストはX-Server-Authorization: <server_JWT>
ヘッダーを含まなければなりません。ここで、<server_JWT>
は前のステップで取得したサーバーJWTです。
ユーザーJWTを使用する
SDKメソッドを使用して、インゲームストアの開設、決済、インベントリ管理を行います。SDKメソッドを使用している際に、認証トークンの代わりにユーザーJWTを渡します。
以下のチュートリアルでは、トークンの使用例を紹介しています:
期限切れ後に新しいユーザーJWTを受け取るためのロジックを実装します。ユーザーがアプリケーションに再度ログインする必要がないように、バックグランドモードで新しいトークンを取得することをお勧めします。
お役立ちリンク
最終更新日: 2024年1月22日誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。