Аутентификация собственного приложения (ios/android) с использованием ADFS

В основном я хочу пройти аутентификацию с помощью ADFS в качестве внешнего поставщика удостоверений в собственном приложении ios/android. Желательно с беспрепятственным входом в систему, но это может потребовать многого. Настройка, которую я хочу, в значительной степени описана здесь за исключением того, что я переместил элементы идентификации в проект STS. Приложения для iOS и Android обращаются к веб-API.

Я также использовал этот курс по множественному праву.

Теперь мне «просто» нужен способ использовать учетные данные, полученные из мобильного приложения, для выдачи токена доступа. Мне нужно знать, на правильном ли я пути. Я использую:

  • Идентификационный сервер3.
  • Oauth2 и OpenID Connect. (используя предоставление пароля)
  • Решение должно работать на adfs 3.0.
  • NET 4.6 веб-API и решения MVC, работающие в Azure.

Я рассматривал проект ADAL.NET, но, похоже, он предназначен в первую очередь для Xamarin, и у меня уже есть изначально разработанные ios и android.

Вопросы:

  1. Каков наилучший подход в будущем?
  2. Есть ли какие-то (возможно, новые) технологии, которые я полностью упускаю?

person danskov    schedule 29.03.2017    source источник


Ответы (1)


Ваша основная проблема заключается в том, что в ADFS 3.0 нет поддержки OpenID Connect и очень ограниченная поддержка OAuth - в основном только аутентификация. предоставление кода для веб-API.

Многое вдоль эти строки.

Если вам нужен полный стек (аналогично тому, что у вас есть с idsrv3), вам понадобится ADFS 4.0.

Вы можете объединить idsrv3 с ADFS, используя WS-Fed для последнего перехода.

person rbrayb    schedule 12.04.2017
comment
Спасибо за ваш ответ. Когда вы говорите федерировать idsrv3 с ADFS с помощью WS-Fed, вы имеете в виду использование пакета Microsoft.Owin.Security.WsFederation и UseWsFederationAuthentication или вы имеете в виду настройку на сервере ADFS? - person danskov; 21.04.2017
comment
Оба. iOS --> OIDC --> idsrv3 RP --> WS-Fed --> ADFS CP. - person rbrayb; 23.04.2017