2016-12-12 6 views
1

У меня возникает следующая проблема, позволяя администраторам регистрировать компанию.Azure AD Вход пользователя завершается неудачно даже после согласия администратора в веб-приложении с несколькими арендаторами

1) Я создал многопользовательское веб-приложение с аутентификацией Azure и развернуто на Azure.

2) В настройках разрешений AD Windows Azure для этого приложения, я проверил следующие разрешения

Application Permissions : Read Directory Data 
Delegated Permissions : Sign in and read user profile 

3) Когда я пытаюсь запустить приложение и войти в систему как пользователь, я являюсь представлены экран, который говорит

Для этого приложения требуется разрешение приложения для другого приложения . Согласие на разрешения для приложений может быть выполнено только . Выйти и войти в систему как администратор или связаться с одним из администраторов вашей организации.

4) Я вошел в систему как администратор, и теперь меня отображает экран согласия администратора. После принятия я смог просмотреть веб-сайт. admin consent screen

5) Когда я вошел в систему как пользователь, мне по-прежнему предъявляется тот же экран ошибки разрешения приложений. Поскольку администратор уже согласился, я бы ожидал, что пользователь сможет теперь войти в веб-приложение.

Пожалуйста, дайте мне знать, если мне нужно установить что-нибудь еще.

ответ

3

Вам необходимо добавить ссылку и/или кнопку в свое приложение, которое позволяет дать согласие на их арендатора, включив prompt=admin_consent в запрос авторизации OAuth2/Open ID Connect.

«согласия администратора» часть этого документа проходит более подробно: https://docs.microsoft.com/en-us/azure/active-directory/active-directory-devhowto-multi-tenant-overview#admin-consent

+0

Так что даже если экран админ согласие говорит, что разрешение будет предоставлено всем пользователям арендатора, мы все еще нужно добавить отдельный btn, который при нажатии будет явно предоставлять admin_consent – Jso

+0

В представленном диалоговом окне говорится, что вы предоставляете доступ к ресурсам, принадлежащим всем пользователям, потому что в качестве администратора он будет иметь доступ к потенциально всем пользовательским ресурсам, а не к тому, что все пользователи получат доступ. Я признаю, что язык в диалоге запутан. Я посмотрю, что я могу сделать, чтобы сообщить об этом внутренне. –

+0

Это исправить проблему @Jso? –