Skip to main content
このトピックでは、XBOX services 呼び出しの認証に関する背景情報を提供します。 XBOX services をより速いペースで公開し、また特定のリカバリー リリースに依存せずにタイトルがこれらのサービスを使用できるようにするために、XBOX services は RESTful HTTPS エンドポイントとしてリリースされます。これらのサービスの認証と認可には、有効な XBOX Secure Token Service (XSTS) トークンと署名が必要です。XSTS トークンの詳細については、XBOX services セキュリティ トークン (XSTS トークン) を参照してください。 XBOX services は 2 つの経路で呼び出されます。
  1. XBOX services クライアント XBOX services で認証されたクライアントから呼び出されます。これらの呼び出しは常にユーザー コンテキスト内で行われます。
  2. サービス間 (Service-to-service) カスタム タイトル Web サービスからサービス間 XBOX services 呼び出しを介して行われます。これらの呼び出しは、ユーザーに代わって、またはサービスとして直接行われます。 タイトル サービスからの呼び出しの詳細については、タイトル サービスから XBOX services への呼び出し を参照してください。

クライアントから XBOX services への呼び出し

Microsoft Game Development Kit (GDK) を使用したすべての XBOX services への呼び出しには、Microsoft Game Development Kit (GDK) リリースにバンドルされている XBOX Service API (XSAPI) を使用することを強くお勧めします。これらの API は HTTP 要求を処理し、利用可能なサービス データをオブジェクトを通じてタイトルに直接返します。また、XBOX services と認証で推奨される接続とキャッシュの動作を実装しています。これらの API の詳細については、XBOX Service API ドキュメントの XSAPI リファレンス を参照してください。 以下のセクションは、XBOX services 認証の完全性と深い理解のためだけに提供されます。

初期設定

XBOX services はすべてのタイトルに対して透過的にプリコンフィグレーションされています。追加のエンドポイント設定は不要です。これはすべての *.xboxlive.com サブドメインに適用されます。

トークン取得と接続フロー

XBOX services のエンドポイントを使用するには、XSTS 認証トークンとメッセージ署名が存在する必要があります。この情報がない場合、サービスとの通信は拒否されます。 XSTS トークンとユーザー識別 (user hash) を要求の Authentication ヘッダーに含める必要があります。メッセージ署名は要求の Signature ヘッダーに指定する必要があります。これらのヘッダーの構造の詳細については、XBOX services セキュリティ トークン (XSTS トークン) を参照してください。

XSTS トークンの取得

XSTS トークンと署名ヘッダー データは、XUserGetTokenAndSignatureUtf16Async API を通じて取得されます。これは、サービス要求に必要なヘッダーを提供します。 その後、タイトルは次のフローで XUserGetTokenAndSignatureUtf16Async API を使用して、XBOX services エンドポイントの XSTS トークンを要求します。
  1. 現在のユーザーで XUserGetTokenAndSignatureUtf16Async を呼び出します。API 呼び出しに XBOX services の URL と必要なヘッダーまたはメッセージ本文を含めます。 この API 呼び出しは、XBOX services エンドポイントの XSTS トークンを取得します。呼び出しは、メッセージと事前定義されたヘッダーに対するメッセージ署名を生成します。
  2. 非同期結果から XUserGetTokenAndSignatureUtf16Result を介して XSTS トークンと署名を取得します。 XUserGetTokenAndSignatureUtf16Result は暗号化された XSTS トークンを返します。タイトルは返されたトークンを不透明なデータとして扱う必要があります。トークン データは、次のサービス呼び出しを超えてディスクに書き込んだり、タイトル領域にキャッシュしたりしてはなりません。
  3. Microsoft Windows HTTP Services (WinHTTP)、xCurl、および XSTS トークンを、HTTPS 要求の Authorization ヘッダーで適宜使用します。

トークンの有効期限と更新

XSTS トークンは特定の期間のみ有効です。XSTS トークンの既定の有効期限は 4 時間です。各トークンにはタイムスタンプが含まれており、すべての XBOX services で検証されます。 新しい認証やサインイン要求ごとに XUserGetTokenAndSignatureUtf16Async API を使用する必要があります。XUserGetTokenAndSignatureUtf16Async はトークンの有効期限とキャッシュを処理します。この API は、タイトルが常に有効なトークンを受信することを保証します。タイトルはこれ以外の方法でトークンをキャッシュしてはなりません。 期限切れまたは無効なトークンが XBOX services エンドポイントに提示されると、HTTP/401 エラーが返されます。
最終更新日 2026年8月25日