メインコンテンツまでスキップ

ユーザー認証を設定する

Last updated on November 6, 2026

注釈:本資料はAI技術を用いて翻訳されています。

概要​

ユーザー認証は、次の 2 つの手順で構成されます。

Steam ログイン方式を設定する​

まだ Steam ログインを設定していない場合は、先に Steam をアイデンティティプロバイダーとして設定するの手順に従ってください。その後、2 つ目のアプリを有効にします。

  1. AGS Admin Portal で、ゲームネームスペースに移動します。

  2. サイドバーメニューで、Foundations > 3rd Party Integrations > Auth & Account Linking に移動します。

  3. Steam SDK プロバイダーをクリックします。

  4. Enable Steam multi app IDs を選択します。2 つ目のアプリの行が表示されます。

  5. 各行について、次のフィールドを入力します。

    • App ID: Steam App ID。数値である必要があり、お使いの Steam パブリッシャーアカウントに属している必要があります。
    • Name: Demo など、アプリを区別するためのラベル。AGS はこの名前をプレイヤーの認証には使用しません。

    1 行目がデフォルトのアプリです。デフォルトを変更するには、行の順序を入れ替えます。

  6. Steam Web API Key と Redirect URI は変更しないでください。この 2 つは両方のアプリで共有されます。

  7. Save をクリックします。

パブリッシャーキーの配下に App ID が見つからない場合は、その行にエラーが表示されます。もう一方の行の値は保持されます。

アプリを削除するには、その行を削除して Save and remove をクリックします。

ゲームクライアントから App ID を送信する​

ユーザー認証時に AGS が App ID を検証する仕組み​

Steam の複数アプリが有効な場合、各 Steam ビルドは、ログインおよびアカウント連携のエンドポイントで、自身のアプリの App ID を appId パラメーターとして送信する必要があります。appId パラメーターは任意であるため、既存の統合はそのまま動作し、設定を有効にするまで影響を受けません。

次のエンドポイントは、リクエストペイロードで appId を受け付けます
リクエストエンドポイント
ログインPOST /iam/v3/oauth/platforms/{platformId}/token and POST /iam/v4/oauth/platforms/{platformId}/token
トークン検証POST /iam/v3/oauth/platforms/{platformId}/token/verify
プラットフォームアカウントの連携POST /iam/v3/public/namespaces/{namespace}/users/me/platforms/{platformId}
プラットフォームアカウントの強制連携POST /iam/v3/public/namespaces/{namespace}/users/me/platforms/{platformId}/force

AGS は、他の処理を行う前に appId を確認します。結果は、Enable Steam multi app IDs がオンかオフかによって異なります。

リクエストの appId結果
送信されない許可されます。AGS は設定済みの App ID を使用します。
設定済みの App ID と一致する許可されます。
設定済みの App ID と異なるエラー 10253 で拒否されます。
備考

AGS は、すべての Steam ログインで生成されるアクセストークンとリフレッシュトークンに、pa_id クレームも追加します。このクレームには、チケットの検証に使用された App ID が格納されます。Session サービスなどの他の AGS サービスは、pa_id クレームを読み取って、プレイヤーがどのアプリを起動したかを確認します。

SDK 統合ガイド​

最新の AGS SDK にアップグレードしてください。Steam ログインおよびアカウント連携の呼び出しに、任意の App ID が追加されています。

  • Unreal Engine SDK と Unreal OSS: バージョン未定
  • Unity SDK: バージョン未定

Online Subsystem (OSS) を使用する場合

コードを変更する必要はありません。AccelByte OSS は、実行中の Steam アプリの App ID を Steam オンラインサブシステムから読み取り、Steam ログインおよびアカウント連携時に送信します。1 つのプロジェクトからビルドされたデモ版と製品版のゲームは、それぞれ自身の App ID を報告します。

OSS は、デフォルトで App ID を送信します。これを無効にするには、DefaultEngine.ini で bSendPlatformAppId を False に設定します。

[OnlineSubsystemAccelByte]
bSendPlatformAppId=False
注記

ログイン認証情報の任意パラメーターに AppId を設定した場合、OSS は代わりにその値を使用します。

AGS Unreal SDK を直接使用する場合

Steam チケットを送信する各呼び出しの任意パラメーターに AppId を設定します。

SDK の呼び出し任意パラメーターの構造体
LoginWithOtherPlatform, LoginWithOtherPlatformV4, LoginWithOtherPlatformId, LoginWithOtherPlatformIdV4FAccelByteLoginWithOtherPlatformOptionalParameters
LinkOtherPlatform, LinkOtherPlatformId, ForcePlatformLinkV3FAccelByteLinkOtherPlatformOptionalParameters

次の例では、Steam でログインします。Steam をアイデンティティプロバイダーとして設定するのデリゲートを再利用しています。<YourSteamAppId> を、このコードを実行するビルドの App ID に置き換えてください。

FAccelByteLoginWithOtherPlatformOptionalParameters OptionalParams{};
OptionalParams.AppId = TEXT("<YourSteamAppId>");

UserApi->LoginWithOtherPlatformV4(
EAccelBytePlatformType::Steam,
SteamTicket,
OnLoginSuccessDelegate,
OnLoginErrorOAuthDelegate,
bCreateHeadlessAccount,
OptionalParams);

アカウント連携も同様に行います。

FAccelByteLinkOtherPlatformOptionalParameters OptionalParams{};
OptionalParams.AppId = TEXT("<YourSteamAppId>");

UserApi->LinkOtherPlatform(
EAccelBytePlatformType::Steam,
SteamTicket,
OnLinkSuccessDelegate,
OnLinkErrorDelegate,
OptionalParams);