Skip to main content
PlayFab では、特定のクライアント API 呼び出しをカスタム暗号化で保護することで、アプリケーションのセキュリティを強化できます。このチュートリアルでは、クライアントの暗号化を有効にする方法を説明します。 ここで使用する方法では、任意の ログイン API 呼び出しを保護できます。プロセスは 常に 類似しているため、ここでは 1 つの 特定のメソッド LoginWithCustomID を保護する方法のみを示します。
ログイン暗号化は、タイトル作成後の すべての プレイヤーに対して使用するか、まったく使用しないかのどちらかを意図しています。これは、後から有効にできる機能では ありません最初から 使用するか、まったく使用しないかを選択する必要があります。特に、暗号化された プレイヤーは 暗号化されていない 方法でログインできず、暗号化されていない プレイヤーは 暗号化された プレイヤーになることはできません。
このガイドでは、次のことを行います。
  1. Player Shared Secret を作成します。
  2. 特定のメソッドで保護を有効にするための API ポリシー ルールを導入します。
  3. クライアントを変更して、Player Shared Key を使用してタイトル公開キーを取得し、ペイロードを暗号化するようにします。
PlayFab は次のような免責事項を示しています: 「すべての API 呼び出しは既に最新の標準で安全に暗号化されており、標準の API 呼び出しの暗号化はほとんどのお客様にとって必要なすべてです。この機能は、プレイヤーが不正なクライアントを使用することをより困難にするために構築された、追加の セキュリティ レイヤーを表します。これは万全ではありません - ハッカーにとっての難易度のバーを上げるだけです。ほとんどの開発者にとって、わずかなセキュリティ向上は、追加で必要な労力に見合いません。」

Player Shared Secret の作成

PlayFab Admin API では、Player Shared Secret を管理するメソッドが公開されています。
特定の名前で新しい共有シークレットを作成すると、同じ名前の既存のキーがあればそれを上書きします。また、異なる名前で登録された 複数の 共有シークレットを持つこともできます。
次のコードを実行して、タイトルに Player Shared Secret を追加します。
このコードを実行するには、開発者シークレット キーが必要です。シークレット キーの詳細については、シークレット キーの管理 を参照してください。 このアプリケーションは、新しく作成された Player Shared Secret を出力するはずです。これを必ず保存してください。失くした場合は、アプリケーションを再度実行して新しいシークレットを生成する必要があります。 シークレットは次のようになります。 QC953WQ3TU6ZJTZMAT1FNJQIKR92FPUQTISW4Q6WD8SY841MQQ

ポリシーの更新

新しい共有シークレットが作成されました。次に、保護する API 呼び出しを PlayFab に指示する必要があります。 以下のコードを実行して、LoginWithCustomId API 呼び出しを保護し、他の API 呼び出しの保護を 解除 します。

クライアントのセットアップ

ポリシーが更新されると、LoginWithCustomID API を単に呼び出すことはできなくなります。以下のコードを検討してください。
通常、これは問題なくユーザーをログインさせます。しかし、現在では この API 呼び出しは 保護されており、コードは Not Authorized エラー (Not Authenticated と混同しないでください) を返します。 呼び出しペイロードを適切に暗号化するために、クライアントを変更する必要があります。これは 2 段階で行います。
  1. Player Shared Secret を使ってタイトル公開キーを取得します。
  2. タイトル公開キーを使ってペイロードを暗号化します。
以下のコードは、これを示しています。
コードを実行すると、ログインできるはずです。Player Shared Secret を作成したら、API 呼び出しで取得または要求する 方法がない ため、クライアント コードにハードコーディングする必要があることに注意してください。
最終更新日 2026年8月13日