Documentation index for AI agents

GS2-Auth SDK for Game Engine API 레퍼런스

게임 엔진용 GS2-Auth SDK의 모델 사양과 API 레퍼런스

모델

EzAccessToken

액세스 토큰

사용자 인증 후 발급되는 액세스 토큰을 관리하는 모델입니다.
액세스 토큰은 사용자가 서비스에 로그인되어 있는 동안 해당 세션의 신원을 증명하는 데 사용됩니다.
토큰에는 유효기간이 설정되어 있으며, 만료되면 재인증이 필요합니다.

타입활성화 조건필수기본값값 제한설명
tokenstring
~ 1024자액세스 토큰
액세스를 인증하기 위한 토큰입니다.
이 토큰은 시스템에 의해 자동으로 생성되며, 사용자의 세션을 식별합니다.
userIdstring
~ 128자사용자ID
expirelong현재 시각으로부터 1시간 후의 절대 시각유효기간
토큰의 유효기간을 나타내는 타임스탬프입니다. 이 시각에 도달하면 토큰은 무효화됩니다.
UNIX 시간·밀리초

메서드

login

계정 인증 정보를 사용하여 GS2에 로그인

GS2-Account::Authentication에서 획득한 bodysignature를 전달하여 로그인하고 액세스 토큰을 받습니다.
액세스 토큰은 유효기간이 1시간인 임시 로그인 정보로, GS2의 각 서비스를 해당 플레이어로서 이용하기 위해 필요합니다.

일반적으로 이 API를 직접 호출할 필요는 없습니다.
Unity 및 Unreal Engine 5 SDK에서는 GS2-Account::Authentication과 이 API를 하나로 묶어 실행하는 Profile::Login이 제공됩니다.
자세한 내용은 초기화 처리 / Game Engine을 참조하십시오.

Request

타입활성화 조건필수기본값값 제한설명
keyIdstring“grn:gs2:{region}:{ownerId}:key:default:key:default”~ 1024자암호화 키 GRN
bodystring
~ 524288자서명 대상 계정 인증 정보
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;
var domain = ez.auth.access_token(
    )

var async_result = await domain.login(
    "body", # body
    "signature", # signature
    "key-0001" # key_id
)
if async_result.error != null:
    push_error(str(async_result.error))
    return

var result = async_result.result