2016-06-28 3 views
2

Работа с AspNetCore RC2 (и теперь v1) ... с использованием комбинации JWT bearer tokens и промежуточного программного обеспечения Identity для аутентификации и авторизации. Прошел хотя учебник (связанный) и получил аутентификацию и авторизацию маркера, работающую с WebAPI.Как остановить промежуточное программное обеспечение Identity от перенаправления на 401?

Мне нужно «app.UseIdentity()» в конфигурации Startup.cs, чтобы использовать структуру Identity для управления пользователями и ролями. Проблема заключается в том, что WebAPI перенаправляет на «учетную запись/логин», а не просто возвращает статус 401 (неавторизованный), когда анонимный пользователь пытается попасть в конечную точку с помощью [Авторизовать].

Я видел, как люди говорят о том, как остановить это при использовании аутентификации cookie, но это не помогает, поскольку я использую только токены.

Может ли кто-нибудь указать мне на то, как сообщить промежуточному программному обеспечению Identity прекратить перенаправление несанкционированных попыток? (Если код нужен, дайте мне знать.) :)

ответ

2

Это, кажется, перестали редирект (Startup.cs, метод ConfigureServices):

services.Configure<IdentityOptions>(options => 
{ 
     options.Cookies.ApplicationCookie.AutomaticAuthenticate = false; 
     options.Cookies.ApplicationCookie.AutomaticChallenge = false; 
     options.Cookies.ApplicationCookie.LoginPath = PathString.Empty; 
     options.User.RequireUniqueEmail = true; 
     options.SignIn.RequireConfirmedEmail = true; 
}); 
+0

Собственно, просто установив 'options.Cookies.ApplicationCookie. AutomaticChallenge' to 'false' останавливает идентификацию от изменения ответа и, следовательно, автоматически не будет перенаправляться. – VSG24

Смежные вопросы