Как аутентифицировать Web API для вызова Graph API с токеном, полученным клиентским приложением - PullRequest
0 голосов
/ 09 июля 2019

Я занимаюсь разработкой клиентского (React, typcript) приложения и серверного (.Net Core) приложения. API должен сделать несколько вызовов API Microsoft графа.

Я зарегистрировал оба приложения в Azure Active Directory и открыл API с разрешением. Поэтому на стороне клиента я получаю access_token, используя msal.js с заданной областью действия:

scopes = ["api://clientId/Test"]

Так что я могу авторизоваться в API.

  1. Как мне получить доступ на стороне API, чтобы использовать API графика? Должен ли я запросить токен в клиенте с scopes = ["User.Read", "api://clientId/Test"]?
  2. Это правильно, что я делаю, чтобы зарегистрировать серверное приложение в Azure? В конце концов, могу ли я получить токен только с областями действия Graph, например scopes = ["User.Read", "Email.Read"], передать его в Api и использовать этот токен на стороне api для доступа к графику?

1 Ответ

0 голосов
/ 13 июля 2019

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

Таким образом, в основном токен доступа извлекается из клиентского приложения с областью, которая предоставляет авторизацию.через приложение сервера.Затем серверное приложение использует этот токен доступа для создания токенов доступа, чтобы получить авторизацию для Graph API.

Здесь образец , который я использовал.

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