Как я могу получить значения User.Identity без использования атрибута Authorize? - PullRequest
0 голосов
/ 04 февраля 2019

Я разрабатываю API, который использует JwtBearer для аутентификации. Когда я пытаюсь использовать User.Identity, как это;

    [HttpGet]
    public IActionResult Detail(int id)
    {
       if(User.Identity.IsAuthenticated)
       {
          return ...
       }
       else
       {
          return ..
       }
    }

Пользователь не содержит токен / данные пользователя и User.Identity.IsAuthenticated всегда возвращает false.Но если я добавлю

[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]

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

Как я могу сделать это без фильтра авторизации?

1 Ответ

0 голосов
/ 04 февраля 2019

Также добавьте атрибут [AllowAnonymous], если вы хотите разрешить неаутентифицированным пользователям.У вас должен быть атрибут [Authorize] для пользователя, который должен быть установлен.

...