PlayFabストレージ

PlayFabストレージを使用する場合、次の機能にアクセスできます:

Note
PlayFabメソッドを使用して、ユーザーに追加のメールを送信できます。

統合フロー

ログインウィジェットまたはアプリケーションをクライアントとして使用できます。クライアントとエクソラログインサーバー間の対話フローは次のとおり:

  1. クライアントはエクソラログインサーバーにリクエストを送信します。リクエストの形式は、JWTOAuth 2.0、およびPasswordエンドポイントで説明されています。
  2. エクソラログインサーバーは、PlayFabにリクエストを送信します。
  3. エクソラログインサーバーはPlayFabからの応答を処理し、結果をクライアントに返します。
  4. クライアントは応答を処理します。

PlayFabでのユーザー登録

ユーザー登録は以下のフローで行います。ユーザー登録を完了するためのユーザーアカウント確認メールの送信をセットアップできます。

ユーザー登録フロー

  1. クライアントは、Register new userリクエストをエクソラログインサーバーに送信します。
  2. エクソラログインサーバーは登録リクエストを送信します。
  3. ユーザーデータはエクソラデータベースに書き込まれます。
  4. エクソラログインサーバーは、PlayFabのデータを変更するリクエストを送信します。
  5. アカウント確認を設定した場合:
    1. APIコールを使用してソリューションを統合すると、登録が完了します。
    2. ログインウィジェットを使用してソリューションを統合すると、ユーザーはページにリダイレクトされ、次のメッセージが表示されます:アカウントの確認メールがに{email address}送信されます
    アカウント確認を設定しない場合、ユーザーは登録後に自動的にログインします。

PlayFabでのユーザーアカウント確認

アカウント確認メールの送信を設定するには、次の手順を実行します:

  1. 指示に従って、PlayFabでプロジェクトを設定します。
  2. RequirementsモジュールでのCreate an email templateCreate a rule to send an email when a contact email is updatedステップを完了することを確認してください。
  3. アカウントマネージャーにお問い合わせください。

Note
PlayFabを使用するプロジェクトにサインアップしたユーザーは、メールアドレスを確認せずにログインできます。

ユーザーのメールアドレスとパスワード経由の認証

ユーザーのメールアドレスとパスワードによる認証には、JWT規格に基づく認証とOAuth 2.0プロトコルに基づく認証の二つのタイプがあります。

Note
エクソラストレージにユーザーデータがない場合:
  1. ユーザーデータがそこに書き込まれます。
  2. エクソラログインサーバーは、PlayFabのデータを変更するリクエストを送信します。

JWT規格に基づく認証フロー

  1. クライアントはエクソラログインサーバーにAuth by username and passwordリクエストを送信します。
  2. エクソラログインサーバーは、PlayFabに認証リクエストを送信します。
  3. 以下の場合には、エクソラログインサーバーは、ユーザーJWTを生成します:
    • PlayFabリクエストへの応答からのPlayFabId値は、external_account_idクレームに書き込まれます。
    • PlayFabリクエストへの応答からのSessionTicket値は、session_ticketクレームに書き込まれます。
    • PlayFabリクエストへの応答からのEntityToken値はentity_tokenentity_identity_typeクレームに書き込まれます。
  4. ユーザーは、クエリパラメータtokenを使用してlogin_urlにリダイレクトされます。ユーザーJWTがtokenパラメーターに書き込まれます。

OAuth 2.0プロトコルに基づく認証フロー

  1. クライアントは、Auth by username and passwordリクエストを、redirect_uriパラメータとともにエクソラログインサーバーに送信します。
  2. エクソラログインサーバーは、PlayFabに認証リクエストを送信します。
  3. エクソラログインサーバーは、クエリパラメーター内のcodeと、redirect_uriを渡したlogin_urlを返します。
  4. ユーザーは、クエリパラメータcodeを使用してredirect_uriにリダイレクトされます。
  5. クライアントは、Generate JWTリクエストをエクソラログインサーバーに送信して、受信したcodeをユーザーJWTと交換します。
  6. 以下の場合には、エクソラログインサーバーは、ユーザーJWTを生成します:
    • PlayFabリクエストへの応答からのPlayFabId値は、external_account_idクレームに書き込まれます。
    • Auth by Username and Passwordリクエストにscope=playfabを渡した場合、PlayFabリクエストへの応答からのSessionTicket値は、session_ticketクレームに書き込まれます。
    • PlayFabリクエストへの応答からのEntityToken値はentity_tokenentity_identity_typeクレームに書き込まれます。

Twitch経由の認証

PlayFabでソーシャルネットワークをセットアップして、Twitchによるユーザーを認証する必要があります。Twitchによる認証には、JWT規格に基づく認証とOAuth 2.0プロトコルに基づく認証の二つのタイプがあります。

Note
PlayFabのユーザーレコードがTwitchアカウントにリンクされている場合、1つのアカウントと見なされます。

JWT規格に基づく認証フロー

  1. クライアントはエクソラログインサーバーにAuth via social networkリクエストを送信します。
  2. エクソラログインサーバーは、PlayFabに認証リクエストを送信します。
  3. ユーザーデータはエクソラデータベースに書き込まれます。
  4. 以下の場合には、エクソラログインサーバーは、ユーザーJWTを生成します:
    • PlayFabリクエストへの応答からのPlayFabId値は、external_account_idクレームに書き込まれます。
    • PlayFabリクエストへの応答からのSessionTicket値は、session_ticketクレームに書き込まれます。
    • PlayFabリクエストへの応答からのEntityToken値はentity_tokenentity_identity_typeクレームに書き込まれます。
  5. ユーザーは、クエリパラメータtokenを使用してlogin_urlにリダイレクトされます。ユーザーJWTがtokenパラメーターに書き込まれます。

OAuth 2.0プロトコルに基づく認証フロー

  1. クライアントは、redirect_uriパラメータを指定したAuth via social networkリクエストをエクソラログインサーバーに送信します。
  2. エクソラログインサーバーは、PlayFabに認証リクエストを送信します。
  3. ユーザーデータがエクソラデータベースに書き込まれます。
  4. エクソラログインサーバーは、PlayFabのデータを変更するリクエストを送信します。
  5. ユーザーは、クエリパラメータcodeを使用してredirect_uriにリダイレクトされます。
  6. クライアントは、Generate JWTリクエストをエクソラログインサーバーに送信して、受信したcodeをユーザーJWTと交換します。
  7. 以下の場合には、エクソラログインサーバーはユーザーJWTを生成します:
    • PlayFabリクエストへの応答からのPlayFabId値は、external_account_idクレームに書き込まれます。
    • Twitch認証リクエストにscope=playfabを渡した場合、PlayFabリクエストへの応答からのSessionTicket値は、session_ticketクレームに書き込まれます。
    • PlayFabリクエストへの応答からのEntityToken値はentity_tokenentity_identity_typeクレームに書き込まれます。

Twitch認証をセットアップする

  1. Twitchアカウントを作成し、Twitch Client IDを取得します。
  2. パブリッシャーアカウントでプロジェクトを開きます。
  3. サイド メニューのログインをクリックし、ログイン プロジェクト > ログイン プロジェクト > ソーシャル コネクションに移動します。
  4. Application IDフィールドにTwitch Client ID>を入力してTwitch.tvを接続します。
  5. 指示に従って、PlayFabアカウントでTwitchを設定します。
  6. APIコールを介してエクソラログインを統合した場合:
    1. Twitchによる認証用リンクを取得します。ソーシャル認証コールを使用します(JWTまたはOAuth 2.0)。
    2. 受け取ったリンクをUIに配置します。

ユーザーパスワードのリセット

ユーザーパスワードのリセットフローは次のとおり:

  1. クライアントはReset passwordリクエストをエクソラログインサーバーに送信します。
  2. エクソラログインサーバーは、パスワードリセットリクエストをPlayFabに送信します。
  3. 更新されたパスワードはPlayFabに書き込まれます。

ユーザーをブロックする

パブリッシャーアカウントを介してユーザーをブロックできます。ブロックされたユーザーは認証できません。ブロッキングはエクソラ側でのみ記録および保存されます。

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

答えたくない

ご意見ありがとうございました!

続きを読む

最終更新日: 2021年6月25日

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

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