Azure AD - как получить токен доступа v2 - PullRequest
0 голосов
/ 03 января 2019

Используя Azure AD, неявный поток OIDC, я могу получить токен доступа из конечной точки v2. Конечная точка авторизации, которую я использую, выглядит следующим образом:

https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>&redirect_uri=https://localhost:44321/signin-oidc&response_type=id_token%20token&scope=openid%20api%3A%2F%2Fdev-api-gateway%2FAtlas&response_mode=form_post&nonce=123

Тем не менее, похоже, что я получаю токен доступа 'v1'. Что я делаю не так?

enter image description here

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Спасибо, что просветили меня, что существуют различия в способе регистрации приложения (представляющего ресурс).По сути, само отличие заключается в поле accessTokenAcceptedVersion в манифесте приложения.Первоначально это было 'null', но я изменил его на '2' (как показано ниже).enter image description here

Согласно документам, значение 'null' также должно разрешать токены v2 - это проблема на стороне AAD, в состоянии 'Open'.

Спасибо за лидерство в этом вопросе.

Относительно способа регистрации приложения действительно есть разница: - если это было сделано на портале Azure, чем поле 'accessTokenAcceptedVersion'для манифеста установлено значение «ноль» - если это было сделано на портале регистрации приложений (https://apps.dev.microsoft.com), чем значение по умолчанию - «2». Если вышеупомянутой проблемы (ошибки) не будет, это не должно вызыватьразница.

0 голосов
/ 04 января 2019

Полученная версия токена связана с вашим ресурсом доступа, который защищен конечной точкой v1 или конечной точкой v2.

С моей стороны, API защищен в конечной точке v2, поэтому он вернул v2 access_token.

https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/authorize?client_id=<client-id>&redirect_uri=https://snv2app.azurewebsites.net&response_type=id_token+token&scope=openid api://f3d966c0-517e-4e13-a5bb-9777a916b1a0/User.read&response_mode=fragment&nonce=123

И для разбора access_token: enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...