2016-07-14 8 views
0

Я преуспел в реализации IdentityServer3. Я создал ASP.NET MVC5 клиента с неявным потока и такой конфигурации запуска Owin:MVC-клиент не может аутентифицироваться на IIS

app.UseCookieAuthentication(new CookieAuthenticationOptions 
    { AuthenticationType = "Cookies" }); 

app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions 
    { 
     ClientId = "mvc.client", 
     Authority = Constants.ServerUri, 
     RedirectUri = Constants.MvcClientUri, 
     ResponseType = "id_token", 
     Scope = "openid profile", 
     UseTokenLifetime = false, 
     SignInAsAuthenticationType = "Cookies", 

     Notifications = new OpenIdConnectAuthenticationNotifications 
     { SecurityTokenValidated = TokenValidatedNotification }, 
     }); 

Все работает отлично работает локально на IIS Express, но терпит неудачу при развертывании на сервере IIS производства. Аутентификация успешна в обоих случаях - id_token возвращается с того же IdentityServer, но на производстве пользователь никогда не аутентифицирован, уведомление не запускается. Ссылки на проекты Microsoft.Owin.Host.SystemWeb сборка. Я зарегистрировал обработку исключений OwinMiddleware как первый, но не было обработано необработанное исключение.

+0

Вы пробовали AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie? –

+0

Я пробовал, но без изменений - работает локально, не аутентифицирован на производстве –

ответ

0

Удостоверьтесь, что на производстве IIS создан веб-сайт, предназначенный для использования аутентификации Anonymous, поскольку вы не полагаетесь на инфраструктуру аутентификации IIS, вы хотите, чтобы запрос прошел через IIS и попал в промежуточное ПО OWIN, отвечающее за аутентификацию.

+0

Разрешен только 'Аноним'. Какие настройки вы подразумеваете под инфраструктурой аутентификации _IIS? –

+0

У IIS есть свои механизмы аутентификации, но когда вы используете OWIN и аутентифицируете пользователей на уровне приложений (используя «промежуточное программное обеспечение»), вы хотите, чтобы IIS пропустил обработку аутентификации. Если вы скажете, что IIS уже настроен только с опцией 'Anonymous', тогда проблема не идет оттуда. –

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

  • Нет связанных вопросов^_^