using Microsoft.AspNetCore.Authentication; using Microsoft.Extensions.Options; using System.Text.Encodings.Web; namespace AobaServer; internal class AobaAuthenticationHandler(IOptionsMonitor options, ILoggerFactory logger, UrlEncoder encoder) : AuthenticationHandler(options, logger, encoder) { protected override Task HandleAuthenticateAsync() { throw new NotImplementedException(); } protected override Task HandleChallengeAsync(AuthenticationProperties properties) { Response.StatusCode = StatusCodes.Status401Unauthorized; Response.BodyWriter.Complete(); return Task.CompletedTask; } protected override Task HandleForbiddenAsync(AuthenticationProperties properties) { Response.StatusCode = StatusCodes.Status403Forbidden; Response.BodyWriter.Complete(); return Task.CompletedTask; } }