Невозможно найти, как пропустить промежуточное программное обеспечение аутентификации для конкретных путей.C#

Место общения программистов C#
Ответить
Anonymous
 Невозможно найти, как пропустить промежуточное программное обеспечение аутентификации для конкретных путей.

Сообщение Anonymous »

Я работаю над небольшим веб-API ASP.NET Core 8, используя шаблон Minimal API.
Я хотел бы иметь возможность пропустить свой ApiKeyAuthenticationHandler для проверки работоспособности ( path), чтобы избежать шума в журнале, но я не могу найти, как это сделать.
Доступ к /health работает нормально, потому что я установил для него значение .AllowAnonymous() (авторизация не требуется), но он все равно проходит через мое промежуточное программное обеспечение ApiKeyAuthenticationHandler (и, таким образом, вызывает ошибку журнала).
В целом, вот мой поток кода :

Код: Выделить всё

var builder = WebApplication.CreateBuilder(args);

//...

builder.Services.AddAuthentication("APIKeyAuthentication").AddScheme("APIKeyAuthentication", null);

//...

builder.Services.AddHealthChecks();

//...

var app = builder.Build();

//...

var hcBuilder = app.MapHealthChecks("/health", new HealthCheckOptions()
{
Predicate = _ => true,
ResponseWriter = UIResponseWriter.WriteHealthCheckUIResponse
}).AllowAnonymous;

//...

app.UseWhen(context => !context.Request.Path.StartsWithSegments("/health"), config =>
{
config.UseAuthentication();
config.UseAuthorization();
});

//...

app.Run();
Я делаю что-то не так или что-то упускаю?
Спасибо за помощь.

Подробнее здесь: https://stackoverflow.com/questions/798 ... fics-paths
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»