닷넷관련/ASP.NET CORE 🍔
ASP.NET Core 8.0: Swagger UI Endpoints Securing 권한 부여로 보안강화 (MapSwagger().RequireAuthorization)
재우니
2024. 1. 23. 02:36
ASP.NET Core 8.0을 사용하면 이제 MapSwagger().RequireAuthorization 을 호출하여 Swagger UI 엔드포인트를 보호할 수 있습니다. 다음 코드 예제를 고려해보세요.
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
builder.Services.AddAuthorization();
builder.Services.AddAuthentication("Bearer").AddJwtBearer();
WebApplication app = builder.Build();
app.UseSwagger();
app.UseSwaggerUI();
app.MapSwagger().RequireAuthorization();
app.MapGet("/status", () =>
{
return "ONLINE";
})
.WithName("GetStatus")
.WithOpenApi();
app.Run();
여기서 /status 의 endpoint 는 권한 부여( authorization) 가 필요하지 않지만, Swagger endpoint 는 권한 부여( authorization) 가 필요합니다.