Получить профиль пользователя от Azure AD, используя график API - PullRequest
0 голосов
/ 30 января 2020

Я хочу разработать задание таймера (C#), которое будет работать в фоновом режиме без какого-либо пользователя, вошедшего в систему, через который мне нужно получить профиль пользователя (изображение профиля и название задания) из Azure AD, используя график апи. Я хочу добиться этого, используя делегированные разрешения (User.ReadBasi c .All), поскольку мне не разрешено использовать разрешения уровня приложения для User.Read.All. Так есть ли способ, которым я могу достичь этого.

1 Ответ

0 голосов
/ 30 января 2020

Да, но пользователь должен будет войти в ваше приложение хотя бы один раз, чтобы инициировать процесс.

Способ, которым вы можете сделать это:

  1. Пользователь входит в ваше приложение (например, это может быть отдельное веб-приложение)
  2. Вы храните токен refre sh, полученный безопасным способом (для каждого пользователя у каждого пользователя есть свой токен)
  3. Ваш Фоновый процесс может взять этот токен refre sh и обменять его на токен доступа + новый токен refre sh
  4. Сохранить новый токен refre sh в том же защищенном хранилище
  5. Используйте токен доступа, чтобы сделать то, что вам нужно сделать

Этот процесс будет работать в фоновом режиме до тех пор, пока работают токены refre sh. Но они могут и действительно истекают. Вы должны быть готовы к этому, чтобы заставить его снова работать для этого пользователя, ему придется повторить шаг 1 снова.

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