Аутентификация веб-интерфейса Azure AD v1 из мобильного приложения Azure AD v2 - PullRequest
0 голосов
/ 27 октября 2018

У нас есть мобильное приложение на основе форм Xamarin, в котором пользователи проходят проверку подлинности с помощью конечной точки AAD v2 (MSAL - Microsoft.Identity.Client), а также приложение ASP.NET Web API, где эти же пользователи проходят проверку подлинности с помощью конечной точки AAD v1 (ADAL - Microsoft. IdentityModel.Clients.ActiveDirectory).

Мы хотели бы, чтобы вызовы REST аутентифицировались в веб-API из мобильного приложения. Мы попытались передать токены аутентификации v2, но InvalidAuthenticationToken вернули нам.

Прежде всего, не уверен, возможно ли это на самом деле. Эта презентация MS от 2017 года говорит, что она еще не реализована, но не может найти, возможно ли это сейчас. В противном случае, есть ли другой способ заставить это работать?

Спасибо

1 Ответ

0 голосов
/ 29 октября 2018

Фон

Это должно быть возможно. С недавним изменением больше нет разницы в клиентском приложении v1 или v2, а в целевых "аудиториях" (например, только мой клиент, все клиенты, Azure AD + MSA) API, к которым они запрашивают доступ ,

Быстрый пример

Если оставить это в стороне, все еще существует понятие версии токена. Однако версия токена - это API, а не клиентское приложение. Например,

Клиент A: предназначен только для Azure AD (формально будет отображаться в приложении v1)

Клиент B: предназначается для Azure AD + MSA (формально будет привязан к приложению v2)

API: принимает Azure AD + MSA (формально соответствует v2 app)

В этом случае токены доступа к клиенту A и клиенту B будут форматом, понятным для токенов API-2.0.

Заключение

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

...