콘텐츠로 이동

Auth 모듈

앱 사용자 인증을 담당하는 모듈입니다. 게스트 로그인, 유저네임 로그인, 외부 인증 제공자(Provider) 로그인과 계정 연동·해제, 이용 제한 조회, 그리고 로그인 결과로 받은 인가 코드를 토큰으로 교환하는 기능을 제공합니다.

모듈 정보

  • 패키지: com.com2usplatform.hiveaxyl.auth
  • 네임스페이스: Hive.Axyl.Auth
  • 지원 플랫폼: 전체 (서버 API)
  • 최소 사양: Unity 6000.0+

제공 인터페이스

인터페이스 등록 메서드 설명
IAuthService AddAuth() 계정 생성, 로그인, 계정 연동과 해제, 이용 제한 조회, 로그아웃, 계정 삭제
ITokenService AddToken() 인가 코드나 리프레시 토큰을 액세스 토큰으로 교환

로그인은 두 인터페이스를 이어서 사용합니다. IAuthService의 로그인 메서드가 인가 코드(AuthorizationCode)를 반환하면, 그 값을 ITokenService.IssueTokenAsync()에 넘겨 액세스 토큰과 리프레시 토큰을 발급받습니다. 인가 코드와 토큰을 분리한 이유는 토큰 노출 위험을 줄이기 위해서입니다.

등록과 획득

HiveBootstrap.Initialize의 등록 단계에서 필요한 인터페이스를 등록한 뒤 HiveCore.Resolve<T>()로 가져옵니다.

using Hive.Axyl.Auth;
using Hive.Axyl.Core;
using Hive.Axyl.Core.Unity;   // HiveBootstrap

var config = CoreConfig.CreateBuilder("{appId}").Build();

HiveBootstrap.Initialize(config, builder =>
{
    builder.AddAuth()
           .AddToken();
});

IAuthService auth = HiveCore.Resolve<IAuthService>();
ITokenService token = HiveCore.Resolve<ITokenService>();

설치 절차와 초기화 옵션은 모듈 설치 및 초기화를 참조하세요.

AuthTokenRefresh

static class — 네임스페이스 Hive.Axyl.Auth

액세스 토큰 자동 갱신을 켜는 진입 클래스입니다. 만료된 액세스 토큰으로 메서드를 호출했을 때 세션의 리프레시 토큰으로 새 토큰을 발급받아 세션을 갱신하고 원래 요청을 이어서 처리하도록 만듭니다.

갱신 핸들러는 재시도에 안전한 전송 계층 위에 구성되어 Core에 등록됩니다.

Enable

자동 갱신 핸들러를 Core에 연결합니다. HiveBootstrap.Initialize 이후에 한 번만 호출하세요.

void Enable(string baseUrl, string clientId)
파라미터 타입 필수 여부 설명
baseUrl string Required 토큰 엔드포인트의 호스트 루트입니다. ITokenService가 사용하는 값과 같으며, AddToken()을 인자 없이 등록했다면 https://core-api.hiveaxyl.com입니다.
clientId string Required 갱신 요청에 함께 보내는 OAuth 클라이언트 식별자입니다.

발생 예외

  • ArgumentNullException: baseUrl 또는 clientId가 null인 경우
  • InvalidOperationException: Core를 초기화하지 않았거나, 갱신 핸들러를 이미 등록한 경우

호출 예시

using Hive.Axyl.Auth;

// HiveBootstrap.Initialize 이후에 한 번만 호출합니다.
AuthTokenRefresh.Enable("{baseUrl}", "{clientId}");

사용 시점과 세션 등록 절차는 자동 로그인을 참조하세요.