Поделиться через


Запрос разрешений, требующих согласия администратора

В этой статье описаны возможности разрешения и согласия для сценария, в котором вы, как разработчик, пишете код приложения для запроса разрешений приложений , требующих административного согласия. Примеры снимок экрана с диалогами разрешений и согласия и Центром администрирования Microsoft Entra предоставляют вам представление о том, что пользователи и администраторы клиентов могут использовать. Улучшение совместной работы с администраторами для реализации принципа нулевого доверия наименьших привилегий в приложениях.

При разработке приложения вы пишете код, который запрашивает доступ к ресурсу , запрашивая маркер доступа с определенной областью (или разрешением). Вы используете параметр области, как описано в стандарте OAuth 2.0 , который некоторые люди описывают как разрешение. Владельцы ресурсов предоставляют или запрещают запросы разрешений. В идентификаторе Microsoft Entra владелец ресурса является пользователем приложения или администратором, который имеет права предоставить согласие на этот ресурс от имени всех пользователей.

Когда приложение запрашивает разрешение на доступ к ресурсу, пользователь может увидеть запрошенное диалоговое окно "Разрешения" , аналогичное этому примеру.

Снимок экрана: диалоговое окно

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

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

Однако невозможно предсказать, какие разрешения требуют согласия администратора, а какие позволяют обычному пользователю предоставить согласие, поскольку администраторы клиентов могут настроить свой клиент с опцией Не разрешать согласие пользователей (все разрешения требуют согласия администратора), как показано на следующем снимке экрана параметров согласия пользователей в Центре администрирования Microsoft Entra.

Снимок экрана: Центр администрирования Microsoft Entra

Администраторы также могут разрешить согласие пользователей для приложений из проверенных издателей, для выбранных разрешений, как показано на следующем снимке экрана с параметрами согласия пользователей в Центре администрирования Microsoft Entra.

Снимок экрана: Центр администрирования Microsoft Entra

Администраторы могут добавить разрешения , к которым пользователи могут предоставить согласие, как показано на следующем снимке экрана классификации разрешений в Центре администрирования Microsoft Entra.

Снимок экрана: Центр администрирования Microsoft Entra

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

Снимок экрана: диалоговое окно

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

Чтобы улучшить разрешения и согласие, администратор клиента может настроить рабочий процесс согласия администратора , как показано на следующем снимке экрана с параметрами пользователя в Центре администрирования Microsoft Entra.

Снимок экрана: Центр администрирования Microsoft Entra

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

Когда администратор арендатора выбирает Да в параметре Пользователи могут запрашивать согласие администратора для приложений, которым они не могут согласовать и приложение запрашивает разрешение, требующее согласия администратора, пользователь видит диалоговое окно Требуется утверждение, обеспечивающее более качественный пользовательский интерфейс.

Снимок экрана: диалоговое окно

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

Когда администратор запускает приложение, которое требует согласия администратора без настройки согласия в Центре администрирования Microsoft Entra, пользователь видит запрошенное диалоговое окно "Разрешения" , как показано в следующем примере.

Снимок экрана: диалоговое окно

В примере администратор видит описание разрешений, запрашиваемых приложением. Администратор может выбрать "Принять" , чтобы отдельно запустить приложение или выбрать согласие от имени организации перед нажатием кнопки "Принять". После того как администратор предоставит согласие от имени организации, ни одному из будущих пользователей организации не потребуется давать разрешение для этого приложения, если администратор не отзовет согласие в конфигурации запросов на согласие администратора клиента.

Другим способом получения согласия администратора арендатора является раздел Разрешения Центра администрирования Microsoft Entra, где администраторы могут просматривать информацию о ранее запрошенных разрешениях приложения.

Снимок экрана: Центр администрирования Microsoft Entra

В примере согласия пользователя администратор может просмотреть предоставленные разрешения для приложения вместе с сведениями о утверждениях, типе разрешений и о том, кто дал согласие. Администратор может выбрать согласие администратора для проверки предоставленных разрешений, требующих согласия администратора.

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

Запрошенные разрешения для диалогового окна организации, описывающие разрешения, которые приложение запрашивает с помощью кнопок

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

Запрос согласия администратора заранее является отличным выбором для бизнес-приложений (LOB), особенно приложений, которые разрабатывает ваша организация. Проще не спрашивать пользователя, может ли ваша компания получить доступ к данным вашей компании, предварительно указав эти приложения. Запрос на согласие администратора выполняется в процессе регистрации приложения.

Следующие шаги