Epic EOS 인증
애플리케이션 설정
Epic / EOS를 인증 제공자로 추가하는 것은 매우 간단하며, Photon Applications 관리 화면에서 몇 초 만에 설정할 수 있습니다.
애플리케이션의 "Manage" 페이지로 이동한 후, "인증" 섹션까지 스크롤 하세요.
필수 설정
- clientid: Epic Account Services를 통해 사용자를 인증하는 데 사용되는 Client ID (ID Token 검증에 사용).
힌트: 현재 이 값은 EOS 대시보드 > Product Settings > Clients ( > Details > Client ID)에서 확인할 수 있습니다. - catalogitemids (선택): 소유해야 하는 카탈로그 아이템. 여러 개일 경우 세미콜론(
;
)으로 구분.
주의: 이 키는 대시보드에서 제거할 수 없으며 값은 비워둘 수 없습니다. 소유권 검증이 필요하지 않은 경우 값으로 “none” 또는 “0”을 사용하세요.
클라이언트 측
클라이언트는 다음을 전송해야 합니다:
- token: ID Token (아래 "사용자 ID 토큰 가져오기" 참조)
- ownershipToken (선택): 대시보드에서 catalogItemIds가 설정된 경우, 클라이언트는 ownershipToken을 전송해야 하며 NS가 해당 아이템 소유 여부를 검증합니다.
ID 토큰 가져오기
클라이언트는 Epic Account Service API를 사용하여 ID Token을 가져와야 합니다. 이는 Epic 공식 문서 "Auth Interface - Retrieving an ID Token For User"에 설명되어 있습니다.
Epic 문서 발췌:
“게임 클라이언트는 사용자가 로그인한 후 EOS_Auth_CopyIdToken
SDK API를 호출하여 로컬 사용자에 대한 ID Token을 얻을 수 있습니다. 이때 EOS_EpicAccountId
를 포함하는 EOS_Auth_CopyIdTokenOptions
구조체를 전달해야 합니다.
출력된 EOS_Auth_IdToken
구조체에는 사용자의 EOS_EpicAccountId
와 ID Token 데이터를 나타내는 JWT가 포함됩니다. 사용이 끝나면 반드시 EOS_Auth_IdToken_Release
를 호출하여 ID Token 구조체를 해제해야 합니다.
ID Token을 가져온 후, 게임 클라이언트는 이를 다른 쪽에 제공할 수 있습니다. ID Token은 로그인된 로컬 사용자에 대해 항상 즉시 사용 가능합니다.”
샘플 코드
아래 코드를 사용하여 ID Token을 가져올 수 있습니다:
C#
// Call this method after login.
private bool GetLocalIdToken(out IdToken? a_IdToken)
{
var options = new CopyIdTokenOptions()
{
AccountId = LocalUserId
};
// NOTE: Make sure to use the EOSAuthInterface to get the IdToken instead of the EOSConnectInterface.
var result = EOSManager.Instance.GetEOSAuthInterface().CopyIdToken(ref options, out a_IdToken);
if (result != Result.Success)
{
Debug.LogError("Failed to copy the IdToken.");
return false;
}
return true;
}
AuthValues
는 다음과 같이 설정할 수 있습니다:
C#
var authValues = new AuthenticationValues();
authValues.AuthType = CustomAuthenticationType.Epic;
var idToken = /* token retrieved by GetLocalIdToken */;
authValues.AddAuthParameter("token", idToken.Value.JsonWebToken.ToString());
Client.AuthValues = authValues;
소유권 검증 토큰 요청
Epic 문서에서 선택적 Ownership Verification Token을 가져오는 방법을 확인할 수 있습니다.
Back to top