GS2-Auth SDK for Game Engine API リファレンス
ゲームエンジン向け GS2-SDK の モデルの仕様 と API のリファレンス
モデル
EzAccessToken
アクセストークン
ユーザー認証後に発行されるアクセストークンを管理するモデルです。
アクセストークンは、ユーザーがサービスにログインしている間、そのセッションの身元を証明するために使用されます。
トークンには有効期限が設定されており、期限切れになると再認証が必要になります。
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| token | string | ✓ | ~ 1024文字 | アクセストークン | ||
| userId | string | ✓ | ~ 128文字 | ユーザーID | ||
| expire | long | ✓ | 現在時刻からの差分(1時間) | 有効期限 (UNIX時間 単位:ミリ秒) |
メソッド
login
指定したユーザIDでGS2にログイン
body と signature には GS2-Account::Authentication の結果を指定します。
body と signature の検証に成功すると、 アクセストークン を応答します。アクセストークン は有効期限が1時間の一時的な認証情報で、GS2内の各サービスでゲームプレイヤーを識別するために使用されます。
なお、UnityとUnreal Engine 5向けGame Engine SDKにはGS2-Account::AuthenticationとこのAPIをひとまとめにした Profile::Login を用意しています。
Profile::Loginについて API リファレンス / 初期化処理 / Game Engine で解説しています。
Request
| 型 | 有効化条件 | 必須 | デフォルト | 値の制限 | 説明 | |
|---|---|---|---|---|---|---|
| keyId | string | ✓ | “grn:gs2:{region}:{ownerId}:key:default:key:default” | ~ 1024文字 | 暗号鍵GRN | |
| body | string | ✓ | ~ 524288文字 | アカウント認証情報の署名対象 | ||
| signature | string | ✓ | ~ 1024文字 | 署名 |
Result
| 型 | 説明 | |
|---|---|---|
| token | string | アクセストークン |
| userId | string | ユーザーID |
| expire | long | 有効期限 (UNIX時間 単位:ミリ秒) |
実装例
var domain = gs2.Auth.AccessToken(
);
var result = await domain.LoginAsync(
body: "body",
signature: "signature",
keyId: "key-0001"
);
var token = result.Token;
var userId = result.UserId;
var expire = result.Expire; var domain = gs2.Auth.AccessToken(
);
var future = domain.LoginFuture(
body: "body",
signature: "signature",
keyId: "key-0001"
);
yield return future;
if (future.Error != null)
{
onError.Invoke(future.Error, null);
yield break;
}
var token = future.Result.Token;
var userId = future.Result.UserId;
var expire = future.Result.Expire; const auto Domain = Gs2->Auth->AccessToken(
);
const auto Future = Domain->Login(
"body", // body
"signature", // signature
"key-0001" // keyId
);
Future->StartSynchronousTask();
if (Future->GetTask().IsError())
{
return false;
}
const auto Result = Future->GetTask().Result();
const auto Token = Result->Token;
const auto UserId = Result->UserId;
const auto Expire = Result->Expire;