Получить AccessToken для Microsoft Graph из службы приложений Azure Easy Auth - PullRequest
1 голос
/ 30 марта 2019

У меня есть основное приложение .NET, размещенное на Azure App Service.Приложение защищено с Azure App Service Authentication.

Мне нужен токен доступа для доступа к Microsoft Graph.

Поскольку я включил Azure App Service Authentication, и все пользователи, которые обращаются к веб-приложению, уже должны пройти проверку подлинности, мне было интересно, можно ли получить токен доступа из /.auth/me или Request.Headers["x-ms-token-aad-access-token"].

Azure App Service Auth

Я пытался следовать примеру, опубликованному на здесь , где я настроил свои additionalLoginParams /config/authsettings на ["resource=https://graph.windows.net"] (или ["resource=https://graph.microsoft.com"] согласно предложению Rohit), что, в свою очередь, должно дать мне токен доступа к MS Graph либо через /.auth/me на стороне клиента или Request.Headers["x-ms-token-aad-access-token"] на C #.

Однако я проверил как на стороне сервера, так и на стороне клиента, и токен доступа не был найден.Есть идеи, что пошло не так?

1 Ответ

1 голос
/ 01 апреля 2019

с тех пор, как это было помечено Azure-Gov, я предполагаю, что служба приложений работает в правительстве Azure? Если да, то какие полномочия AAD вы указываете в контексте аутентификации или / config / authsettings при вызове Graph? Если это в Azure Gov, и вы планируете аутентифицировать пользователей Azure Gov, полномочия AAD должны быть login.microsoftonline.us. Каким был HTTP-ответ на запрос?

Кроме того, как уже упоминалось, в настоящее время доступны два API-интерфейса Graph (Azure AD Graph и Microsoft Graph). Microsoft Graph в конечном итоге заменит Azure AD Graph, но пока можно использовать любой из них.

URI ресурса для AAD Graph в Azure Gov на данный момент совпадает с общедоступным Azure: graph.windows.net.

Тем не менее, ресурс Uri для Microsoft Graph в Azure Gov - это graph.microsoft.us по сравнению с graph.microsoft.com в общедоступной Azure.

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