diff --git a/src/main/java/org/ezcode/codetest/infrastructure/swagger/config/SwaggerConfig.java b/src/main/java/org/ezcode/codetest/infrastructure/swagger/config/SwaggerConfig.java index 77d9a9cd..239bd68c 100644 --- a/src/main/java/org/ezcode/codetest/infrastructure/swagger/config/SwaggerConfig.java +++ b/src/main/java/org/ezcode/codetest/infrastructure/swagger/config/SwaggerConfig.java @@ -3,6 +3,7 @@ import org.springframework.context.annotation.Configuration; import io.swagger.v3.oas.annotations.OpenAPIDefinition; +import io.swagger.v3.oas.annotations.enums.SecuritySchemeIn; import io.swagger.v3.oas.annotations.enums.SecuritySchemeType; import io.swagger.v3.oas.annotations.info.Info; import io.swagger.v3.oas.annotations.security.SecurityRequirement; @@ -19,5 +20,10 @@ scheme = "bearer", bearerFormat = "JWT" ) +@SecurityScheme( + name = "JWT_REFRESH", // refreshToken용 + type = SecuritySchemeType.APIKEY, + in = SecuritySchemeIn.HEADER +) public class SwaggerConfig { } diff --git a/src/main/java/org/ezcode/codetest/presentation/usermanagement/AuthController.java b/src/main/java/org/ezcode/codetest/presentation/usermanagement/AuthController.java index 2bd49c4a..d3b14696 100644 --- a/src/main/java/org/ezcode/codetest/presentation/usermanagement/AuthController.java +++ b/src/main/java/org/ezcode/codetest/presentation/usermanagement/AuthController.java @@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.RestController; import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletRequest; import jakarta.validation.Valid; @@ -62,13 +62,12 @@ public ResponseEntity logout( } @Operation(summary = "토큰 재발급", description = "리프레시 토큰을 이용하여 새로운 액세스 토큰을 발급합니다.", - parameters = { - @Parameter(name = "Authorization", description = "Bearer {refreshToken}", required = true) - }) + security = @SecurityRequirement(name = "JWT_REFRESH") + ) @PostMapping("/auth/refresh") public ResponseEntity refresh(HttpServletRequest request) { - String token = Optional.ofNullable(request.getHeader("Authorization")) + String token = Optional.ofNullable(request.getHeader("JWT_REFRESH")) .map(h -> h.replace("Bearer ", "")) .orElseThrow(()-> new AuthException(AuthExceptionCode.INVALID_AUTHORIZATION_HEADER));