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 이후에 한 번만 호출하세요.
| 파라미터 | 타입 | 필수 여부 | 설명 |
|---|---|---|---|
baseUrl | string | Required | 토큰 엔드포인트의 호스트 루트입니다. ITokenService가 사용하는 값과 같으며, AddToken()을 인자 없이 등록했다면 https://core-api.hiveaxyl.com입니다. |
clientId | string | Required | 갱신 요청에 함께 보내는 OAuth 클라이언트 식별자입니다. |
발생 예외
ArgumentNullException:baseUrl또는clientId가null인 경우InvalidOperationException: Core를 초기화하지 않았거나, 갱신 핸들러를 이미 등록한 경우
호출 예시
사용 시점과 세션 등록 절차는 자동 로그인을 참조하세요.