Аутентификация ASPNetCore wepApi на основе простого условия - PullRequest
0 голосов
/ 22 мая 2019

Так что я новичок в Rest и реализовал свой первый webapi с нуля. Теперь я хочу встроить аутентификацию (http) на определенных условиях. Везде читаю имя пользователя и пароль. Токены и т. Д. Есть ли срок аутентификации только для обычных проверок. В основном пользователю необходимо отправить 2 вещи. AppId и correlationId. AppId должен соответствовать элементу из списка разрешенных приложений (вероятно, будет в файле конфигурации), и мне нужно посмотреть, заполнен ли correlationId. Если эти 2 условия выполнены, пользователь / приложение может продолжить вызывать остальные службы в API. Я не спрашиваю код, так как сам его реализую. ссылка или термин, который я могу найти в Интернете, который будет соответствовать моим требованиям, будет отличной.

1 Ответ

0 голосов
/ 22 мая 2019

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

      public async Task InvokeAsync(HttpContext httpContext, IConfiguration configuration)
                {

                            var isAuthorized = Authorize();

                            if (isAuthorized)
                            {
                               ..do your stuff
                               await _next.Invoke(httpContext);
                            }
                            else
                            {
                                await UnauthorizedResponseAsync(httpContext);
                            }

                }

          private static async Task UnauthorizedResponseAsync(HttpContext httpContext)
            {
                httpContext.Response.StatusCode = 401;
                await httpContext.Response.WriteAsync("Unauthorized");
                return;
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...