Настройка согласия пользователей на приложения
В этой статье вы узнаете, как настроить способ предоставления пользователям согласия на приложения и отключение всех будущих операций согласия пользователей для приложений.
Прежде чем приложение сможет получить доступ к данным вашей организации, пользователь должен предоставить им разрешения на это. Различные разрешения разрешают различные уровни доступа. По умолчанию все пользователи могут предоставить согласие на приложения для разрешений, которые не требуют согласия администратора. Например, по умолчанию пользователь может разрешить приложению доступ к почтовому ящику, но не может разрешить приложению небезопасный доступ для чтения и записи всех файлов в организации.
Чтобы снизить риск вредоносных приложений, пытающихся обмануть пользователей предоставить им доступ к данным вашей организации, рекомендуется разрешить согласие пользователей только для приложений, опубликованных проверенным издателем.
Заметка
Приложения, которым требуется, чтобы пользователи были назначены приложению, должны иметь свои разрешения, предоставленные администратором, даже если политики согласия пользователя для вашего каталога в противном случае позволят пользователю согласиться от имени себя.
Необходимые условия
Чтобы настроить согласие пользователя, вам потребуется:
- Учетная запись пользователя. Если у вас еще нет учетной записи, вы можете создать учетную запись бесплатно.
- Роль администратора привилегированных ролей.
Настройка параметров согласия пользователя
Кончик
Действия, описанные в этой статье, могут немного отличаться на портале, с который вы начинаете работу.
Чтобы настроить параметры согласия пользователя в Центре администрирования Microsoft Entra, выполните следующие действия.
Войдите в Центр администрирования Microsoft Entra в качестве администратора привилегированных ролей.
Перейдите к параметрам согласия и разрешений>для приложений>Identity>Applications>Enterprise.
В разделе "Согласие пользователя для приложений" выберите параметр согласия, который требуется настроить для всех пользователей.
Нажмите кнопку "Сохранить", чтобы сохранить параметры.
Чтобы выбрать, какая политика согласия приложения управляет согласием пользователей для приложений, можно использовать модуль Microsoft Graph PowerShell . Командлеты, используемые здесь, включены в модуль Microsoft.Graph.Identity.SignIns .
Подключение к Microsoft Graph PowerShell
Подключитесь к Microsoft Graph PowerShell, используя необходимое разрешение с минимальными привилегиями. Для чтения текущих параметров согласия пользователя используйте Policy.Read.All. Для чтения и изменения параметров согласия пользователя используйте Policy.ReadWrite.Authorization. Вам нужно войти в качестве администратора привилегированных ролей.
Connect-MgGraph -Scopes "Policy.ReadWrite.Authorization"
Отключение согласия пользователя
Чтобы отключить согласие пользователя, убедитесь, что политики согласия (PermissionGrantPoliciesAssigned
) включают другие текущие ManagePermissionGrantsForOwnedResource.*
политики при обновлении коллекции. Таким образом, вы можете поддерживать текущую конфигурацию для параметров согласия пользователя и других параметров согласия ресурсов.
# only exclude user consent policy
$body = @{
"permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
"managePermissionGrantsForOwnedResource.{other-current-policies}"
)
}
Update-MgPolicyAuthorizationPolicy -BodyParameter $body
Разрешить согласие пользователя в соответствии с политикой согласия приложения с помощью PowerShell
Чтобы разрешить согласие пользователя, выберите политику согласия приложения, которая должна управлять авторизацией пользователей, чтобы предоставить согласие приложениям. Убедитесь, что политики согласия (PermissionGrantPoliciesAssigned
) включают другие текущие ManagePermissionGrantsForOwnedResource.*
политики, если таковые имеются при обновлении коллекции. Таким образом, вы можете поддерживать текущую конфигурацию для параметров согласия пользователя и других параметров согласия ресурсов.
$body = @{
"permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
"managePermissionGrantsForSelf.{consent-policy-id}",
"managePermissionGrantsForOwnedResource.{other-current-policies}"
)
}
Update-MgPolicyAuthorizationPolicy -BodyParameter $body
Замените {consent-policy-id}
идентификатором политики, которую вы хотите применить. Вы можете выбрать созданную политику согласия приложения или выбрать из следующих встроенных политик:
ИДЕНТИФИКАТОР | Описание |
---|---|
Microsoft-user-default-low | Разрешение согласия пользователя для приложений от проверенных издателей для выбранных разрешений Разрешить ограниченное согласие пользователя только для приложений от проверенных издателей и приложений, зарегистрированных в клиенте, и только для разрешений, которые вы классифицируете как низкое влияние. (Не забудьте классифицировать разрешения для выбора разрешений, которым разрешено согласие пользователей.) |
Microsoft-user-default-legacy | Разрешить согласие пользователя для приложений Этот параметр позволяет всем пользователям предоставлять согласие на любое разрешение, которое не требует согласия администратора для любого приложения. |
Например, чтобы включить согласие пользователя в соответствии со встроенной политикой microsoft-user-default-low
, выполните следующие команды:
$body = @{
"permissionGrantPolicyIdsAssignedToDefaultUserRole" = @(
"managePermissionGrantsForSelf.managePermissionGrantsForSelf.microsoft-user-default-low",
"managePermissionGrantsForOwnedResource.{other-current-policies}"
)
}
Используйте обозреватель Graph, чтобы выбрать политику согласия приложения, которая управляет согласием пользователей для приложений. Вам нужно войти в качестве администратора привилегированных ролей.
Чтобы отключить согласие пользователя, убедитесь, что политики согласия (PermissionGrantPoliciesAssigned
) включают другие текущие ManagePermissionGrantsForOwnedResource.*
политики при обновлении коллекции. Таким образом, вы можете поддерживать текущую конфигурацию для параметров согласия пользователя и других параметров согласия ресурсов.
PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy
{
"defaultUserRolePermissions": {
"permissionGrantPoliciesAssigned": [
"managePermissionGrantsForOwnedResource.{other-current-policies}"
]
}
}
Разрешить согласие пользователя в соответствии с политикой согласия приложения с помощью Microsoft Graph
Чтобы разрешить согласие пользователя, выберите политику согласия приложения, которая должна управлять авторизацией пользователей, чтобы предоставить согласие приложениям. Убедитесь, что политики согласия (PermissionGrantPoliciesAssigned
) включают другие текущие ManagePermissionGrantsForOwnedResource.*
политики, если таковые имеются при обновлении коллекции. Таким образом, вы можете поддерживать текущую конфигурацию для параметров согласия пользователя и других параметров согласия ресурсов.
PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy
{
"defaultUserRolePermissions": {
"managePermissionGrantsForSelf.{consent-policy-id}",
"managePermissionGrantsForOwnedResource.{other-current-policies}"
}
}
Замените {consent-policy-id}
идентификатором политики, которую вы хотите применить. Вы можете выбрать созданную политику согласия приложения или выбрать из следующих встроенных политик:
ИДЕНТИФИКАТОР | Описание |
---|---|
Microsoft-user-default-low | Разрешение согласия пользователя для приложений от проверенных издателей для выбранных разрешений Разрешить ограниченное согласие пользователя только для приложений от проверенных издателей и приложений, зарегистрированных в клиенте, и только для разрешений, которые вы классифицируете как низкое влияние. (Не забудьте классифицировать разрешения для выбора разрешений, которым разрешено согласие пользователей.) |
Microsoft-user-default-legacy | Разрешить согласие пользователя для приложений Этот параметр позволяет всем пользователям предоставлять согласие на любое разрешение, которое не требует согласия администратора для любого приложения. |
Например, чтобы включить согласие пользователя в соответствии со встроенной политикой microsoft-user-default-low
, используйте следующую команду PATCH:
PATCH https://graph.microsoft.com/v1.0/policies/authorizationPolicy
{
"defaultUserRolePermissions": {
"permissionGrantPoliciesAssigned": [
"managePermissionGrantsForSelf.microsoft-user-default-low",
"managePermissionGrantsForOwnedResource.{other-current-policies}"
]
}
}
Кончик
Чтобы разрешить пользователям запрашивать проверку и утверждение приложения администратора, на которое пользователь не может согласиться, включите рабочий процесс согласия администратора. Например, это можно сделать, если согласие пользователя отключено или когда приложение запрашивает разрешения, которые пользователь не может предоставить.