Microsoft Graph — получить данные администратора после согласия

У меня есть приложение Microsoft, которое запрашивает разрешение User.ReadWrtie.All на странице согласия администратора.

После того, как администратор организации дал свое согласие, он перенаправляется на URL-адрес, который я определяю, и я получаю tenant значение в запросе, которое я могу использовать для получения токена и выполнения действий.

Все идет нормально. Есть ли способ получить данные администратора (имя, адрес электронной почты, название компании и т. д.)?

Я предполагаю, что с точки зрения разрешения у меня есть разрешение знать эту информацию, но в документах (получить пользовательскую документацию) кажется, что я должен указать userPrincipalName (чего я не знаю), чтобы получить эти данные.

Можно ли как-то получить данные администратора? даже если это означает отправку более одного запроса...

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

Kalyan Krishna 07.04.2019 22:08

не будет ли graph.microsoft.com/v1.0/me просто работать для вас, это должно возвращать данные пользователя для вошедшего в систему пользователя

Glen Scales 08.04.2019 02:59

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

Noam 08.04.2019 08:50

@GlenScales, /me не работает, у меня нет пользователя, вошедшего в систему (дающего согласие от имени организации! = вход в систему с правами администратора), поэтому при попытке сделать это я получаю resourceNotFound. Мне просто нужны данные любого администратора, не обязательно того, который дал согласие, если это упростит...

Noam 08.04.2019 08:54

@Noam, я имел в виду использование REST API управления Azure для список пользователей в роли Azure.

Kalyan Krishna 14.04.2019 06:57
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
Как установить LAMP Stack 1/2 на Azure Linux VM
Как установить LAMP Stack 1/2 на Azure Linux VM
В дополнение к нашему предыдущему сообщению о намерении Azure прекратить поддержку Azure Database для MySQL в качестве единого сервера после 16...
0
5
153
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Is it possible to get the admin details some how?

Мы не будем знать администратора, давшего согласие. Вам нужно указать userid/userPrincipalName, чтобы получить информацию о пользователе.

GET https://graph.microsoft.com/v1.0/users/{id | userPrincipalName}

Как насчет получения сведений о любом администраторе организации? Это возможно?

Noam 08.04.2019 08:55

@ Ноам Да, можешь. Но вам нужна роль Directory.Read.All. Вы можете вызвать api роли каталога, чтобы найти идентификатор роли администратора, а затем перечислить участников. docs.microsoft.com/en-us/graph/api/…

Tony Ju 08.04.2019 09:10

Спасибо. Я предполагаю, что роль «администратора» — это роль с displayNameCompany Administrator. Спасибо еще раз.

Noam 08.04.2019 10:09

Другие вопросы по теме