Какое разрешение API требуется для включения назначения пользователя? в Azure приложении AD Enterprise - PullRequest
0 голосов
/ 12 марта 2020

Если на портале Azure я установил Enterprise applications > Properties > User assignment required? на No, тогда аутентификация работает как положено. Однако, если я включил его, пользователи получат ошибку Application needs permission to access resources in your organization that only an admin can grant. Я понимаю, что мне нужно добавить разрешение API для моего приложения, но что это такое?

Интересно, что если пользователь ранее входил в приложение, то это не влияет на включение этого параметра. Это влияет только на пользователей, которые никогда его не использовали

Редактировать : Для пояснения, у меня уже созданы роли приложения. Пользователи без ролей приложения не могут войти в систему, как ожидалось. Пользователи с ролями приложения, которые выполнили первый вход после того, как опция переключилась на Да, получают вышеуказанную ошибку

1 Ответ

0 голосов
/ 16 марта 2020

Наконец, я воспроизвожу вашу проблему с URL-адресом запроса ниже, область действия также может быть другой, например, https://storage.azure.com/.default, которая была добавлена ​​в API permissions приложения AD.

https://login.microsoftonline.com/<tenant0id>/oauth2/v2.0/authorize?
client_id=xxxxxxx
&response_type=code
&redirect_uri=http://localhost
&response_mode=query
&scope=https://management.azure.com/.default
&state=12345

enter image description here

Если для User assignment required установлено значение Yes, я заметил, что он не будет поощрять пользователя к согласию с разрешениями. (например, user_impersonation в Azure Service Management API.)

Чтобы решить эту проблему, нам нужно согласие администратора на приложение, просто перейдите к API permissions, нажмите кнопку Grant the admin consent for xxx, затем нажмите будет работать нормально.

enter image description here

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