2016-10-18 9 views
0

Я скачал Azure образец для «Построить многопользовательские демон с v2.0 конечной точкой» отсюда: https://github.com/Azure-Samples/active-directory-dotnet-daemon-v2Администратор согласие не работает для области видимости User.Read.All в v2 App

Я зарегистрировал приложение в apps.dev.microsoft.com, установите область Разрешения на применение для User.Read.All и замените идентификатор приложения и сгенерированный пароль в Startup.Auth.cs в коде.

Образец кода работает нормально, за исключением того, что грант согласия администратора не работает.

Код в AccountController.RequestPermissions() успешно создает и отправляет запрос согласия администратора. На странице согласия отображается правильная область действия: «Прочитайте все профили пользователей». После предоставления согласия я перенаправлен на https://localhost:44316/Account/GrantPermissions?admin_consent=True&tenant=my-tenant-id, показывая, что грант был успешным. Я также вижу, что приложение появилось в моих корпоративных приложениях на портале Azure после этого.

Однако звонок в https://graph.microsoft.com/v1.0/users в UsersController.Index по-прежнему приводит к запрету «403». Деталь ошибки в Скрипач показывает:

"code": "Authorization_RequestDenied", "message": "Insufficient privileges to complete the operation."

Маркер JWT Знаменосец в этом запросе имеет свой правильный арендатор идентификатор и одну роль: «User.Read.All».

Моя учетная запись является глобальным администратором этого арендатора и может запрашивать пользователей на сервере graph.microsoft.io.

This response Дата 30 июня предполагает, что еще не возможно использовать admin_consent с App Model v2. Образец, который я загрузил, однако, относится к концу сентября и показывает именно этот сценарий, поэтому я надеялся, что он поддерживается тем временем.

Является ли admin_consent уже поддерживаемым в App Model v2? Если да, может ли кто-нибудь помочь мне узнать, что происходит не так? Благодарю.

ответ