Внедрение AuthenticationMiddleware в Ocelot - как вернуть 401 - PullRequest
0 голосов
/ 29 января 2019

Я думаю, что этот вопрос довольно тривиален, но я не могу найти на него ответ:

Я использую Ocelot в качестве шлюза API и использую свое собственное промежуточное ПО для аутентификации, так как мне нужно аутентифицировать пользователей понаша собственная база данных.Счастливый путь работает просто отлично.Однако, если пользователь не может пройти аутентификацию, я могу вернуть только 500 внутренних ошибок сервера, но я не знаю, как заставить ocelot вернуть 401.

Кто-нибудь может мне помочь?Это было бы самым основным из того, что я имею в виду:

var authSuccess = authenticate();
if (authSuccess)
{
    await next.Invoke();
} else
{
    // cancel and Return 401
}

1 Ответ

0 голосов
/ 29 января 2019

Хорошо, я заглянул в репо и нашел то, что мне помогло:

AuthenticationMiddleware = async (context, next) =>
{
   var authSuccess = authenticate();
   if (authSuccess)
   {
       await next.Invoke();
   } else
   {
      var error = new UnauthenticatedError("Some Message");
      context.Errors.Add(error);
   }
}       
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...