Files
sam-api/routes/api/v1/auth.php

33 lines
1.3 KiB
PHP
Raw Normal View History

<?php
/**
* 인증 관련 API 라우트 (v1)
*
* - 로그인/로그아웃
* - 회원가입
* - 토큰 관리
* - 내부 서버간 통신
*/
use App\Http\Controllers\Api\V1\ApiController;
use App\Http\Controllers\Api\V1\InternalController;
use App\Http\Controllers\Api\V1\RefreshController;
use App\Http\Controllers\Api\V1\RegisterController;
use Illuminate\Support\Facades\Route;
// 내부 서버간 통신 (API Key, Bearer 인증 제외 - HMAC 인증 사용)
Route::prefix('internal')->group(function () {
Route::post('/exchange-token', [InternalController::class, 'exchangeToken'])->name('v1.internal.exchange-token');
});
// API KEY 인증 (글로벌 미들웨어로 이미 적용됨)
Route::get('/debug-apikey', [ApiController::class, 'debugApikey']);
// Auth API
Route::post('login', [ApiController::class, 'login'])->name('v1.users.login');
Route::middleware('auth:sanctum')->post('logout', [ApiController::class, 'logout'])->name('v1.users.logout');
Route::post('signup', [ApiController::class, 'signup'])->name('v1.users.signup');
Route::post('token-login', [ApiController::class, 'tokenLogin'])->name('v1.auth.token-login'); // MNG → DEV 자동 로그인
Route::post('refresh', [RefreshController::class, 'refresh'])->name('v1.token.refresh');
Route::post('register', [RegisterController::class, 'register'])->name('v1.register');