В ASP. NET Web API Core, как я могу форсировать ответ 401 - PullRequest
0 голосов
/ 25 марта 2020

Я использую OAuth2 и OID C в моей ASP. NET Core Web API Service. Когда я получаю токен JWT, он проверяет его.

В моем случае мой Эмитент не соответствует. Я могу видеть это, потому что результаты проверки отображаются в JwtBearerEvents событии OnAuthenticationFailed. В этот момент я могу знать, что мне нужно вернуть 401.

Как мне настроить мой сервис на возврат 401 в этот момент?

1 Ответ

1 голос
/ 26 марта 2020

У меня не было возможности проверить это в реальном проекте, но если вы просто хотите вернуть 401, то вы можете попробовать что-то вроде:

OnAuthenticationFailed = context =>
{
    context.Response.StatusCode = 401; 
    context.Response.WriteAsync("Unauthorized").Wait();
    return Task.CompletedTask;
}
...