GS2-Auth SDK for Game Engine API リファレンス

モデル

EzAccessToken

アクセストークン

ユーザー認証後に発行されるアクセストークンを管理するモデルです。
アクセストークンは、ユーザーがサービスにログインしている間、そのセッションの身元を証明するために使用されます。
トークンには有効期限が設定されており、期限切れになると再認証が必要になります。

必須デフォルト値の制限説明
tokenstring~ 1024文字アクセストークン
userIdstring~ 128文字ユーザーID
expirelong現在時刻からの差分(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

必須デフォルト値の制限説明
keyIdstring“grn:gs2:{region}:{ownerId}:key:default:key:default”~ 1024文字暗号鍵GRN
bodystring~ 1048576文字アカウント認証情報の署名対象
signaturestring~ 1024文字署名

Result

説明
tokenstringアクセストークン
userIdstringユーザーID
expirelong有効期限 (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;