2015-06-04 4 views
2

У нас есть приложение со своей собственной аутентификацией, для которого мы недавно добавили поддержку OAuth2. Корпоративный клиент может указать данные для своей ADFS или домена Google, и мы используем это для автоматической регистрации и входа в систему своих пользователей.Запросить учетные данные AD для каждого запроса авторизации OAuth2

Теперь проблема заключается в переключении учетных данных. Когда мы выходим из нашего приложения, нажатие кнопки входа в систему (которая перенаправляется на настроенную конечную точку авторизации ADFS OAuth2) сразу же проверяет пользователя и отправляет его обратно в наше приложение с действующим кодом для его текущих учетных данных.

Конечная точка Google имеет специальный параметр approval_prompt, который мы можем использовать для принудительного промежуточного шага, на котором пользователь может переключать свои учетные данные. Я не думаю, что у ADFS это есть.

Какие еще решения у нас есть? Возможно ли сконфигурировать что-либо на сервере ADFS, которое предложит пользователю ввести его учетные данные для каждого запроса авторизации?

+0

ли вы выяснить, решение т o эта проблема? У меня такая же проблема с OAuth и ADFS. На основании того, что я прочитал, похоже, я могу добавить 'prompt = login' в'/adfs/ls/authorize', но он ничего не делает. – limc

+0

Для нас добавление параметра prompt = login to que URL работает с OAuth2 – Troglo

ответ

0

Вот как работают эти параметры URL, как лучше, как я их понимаю:

  • ва является операцией мы запрашивающий. До сих пор я видел только два значения: wsignin1.0 и wsignout1.0
  • wfresh как-то связано с максимальным временем кэширования учетных данных, но я не совсем понимаю его. 0 означает, что вы не используете кешированные учетные данные.
  • wtrealm - это AppID, настроенный в ADFS. Это сообщает серверу ADFS, какое приложение пытается аутентифицироваться. Для нас это базовый URL-адрес приложения.
  • wctx - некоторые данные, специфичные для приложения, возвращаемые приложению с сервера ADFS после запроса. Поскольку мы используем стандартную настройку System.IdentityModel, она обрабатывает синтаксический анализ и реагирует на это значение, а не наш код. В нем есть параметр ru. Это возвращаемый url. Вот как мы возвращаемся к странице, откуда мы пришли.
  • ДАП отметка времени запроса аутентификации
+0

Итак ... Любая идея, что я могу использовать? :-) –

+2

Эти параметры предназначены для ws-feed не для oauth. – nzpcmad

0

Для нас, добавив параметр строки = входа в Que запрос авторизации URL работает с OAuth2:

/ADFS/oauth2/авторизовать response_type = код & client_id = XXX & ресурс = YYY & redirect_uri = ZZZZ & подсказка = Войти

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