Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описано, как настроить классификации разрешений в идентификаторе Microsoft Entra. Классификации разрешений позволяют определить влияние различных разрешений на основе политик вашей организации и оценки рисков. Например, можно использовать классификацию разрешений в политиках согласия, чтобы определить набор разрешений, на которые пользователи могут предоставлять согласие.
Поддерживаются три классификации разрешений: "Низкий", "Средний" (предварительная версия) и "Высокий" (предварительная версия). В настоящее время можно классифицировать только делегированные разрешения, которые не требуют согласия администратора.
Минимальные разрешения, необходимые для базового входа, — это openid
, profile
, email
и offline_access
, которые являются делегированными разрешениями на Microsoft Graph. С этими разрешениями приложение может считывать сведения о профиле вошедшего пользователя и поддерживать этот доступ, даже если пользователь больше не использует приложение.
Вот что необходимо для настройки классификации разрешений:
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно.
- Одна из следующих ролей: администратор приложений или администратор облачных приложений
Выполните следующие действия, чтобы классифицировать разрешения с помощью Центра администрирования Microsoft Entra:
- Войдите в Центр администрирования Microsoft Entra как минимум администратор облачных приложений.
- Перейдите в Entra ID>, Предприятие приложения>, Согласие и разрешения>, Классификации разрешений.
- Выберите вкладку для классификации разрешений, которую вы хотите обновить.
- Выберите "Добавить разрешения", чтобы классифицировать другое разрешение.
- Выберите API и выберите один или несколько делегированных разрешений.
В этом примере мы классифицируем минимальный набор разрешений, необходимых для единого входа:
Для классификации разрешений можно использовать последнюю версию Microsoft Entra PowerShell . Классификации разрешений настраиваются в объекте ServicePrincipal API, публикующего разрешения.
Выполните следующую команду, чтобы подключиться к Microsoft Entra PowerShell. Чтобы предоставить согласие на необходимые области, войдите как минимум как Администратор облачных приложений.
Connect-Entra -scopes "Policy.ReadWrite.PermissionGrant", "Application.Read.All"
Получите объект ServicePrincipal для API. Здесь мы извлекаем объект ServicePrincipal для API Microsoft Graph:
$serviceprincipal = Get-EntraServicePrincipal ` -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
Прочтите классификации делегированных разрешений для API.
Get-EntraServicePrincipalDelegatedPermissionClassification ` -ServicePrincipalId $serviceprincipal.ObjectId | Format-Table Id, PermissionName, Classification
Получите объект ServicePrincipal для API. Здесь мы извлекаем объект ServicePrincipal для API Microsoft Graph:
$serviceprincipal = Get-EntraServicePrincipal ` -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
Найдите делегированное разрешение, которому вы хотите присвоить категорию:
$delegatedPermission = $serviceprincipal.oauth2PermissionScopes | Where-Object { $_.Value -eq "User.ReadBasic.All" }
Задайте категорию разрешения с помощью его имени и идентификатора:
Add-EntraServicePrincipalDelegatedPermissionClassification ` -ServicePrincipalId $serviceprincipal.ObjectId ` -PermissionId $delegatedPermission.Id ` -PermissionName $delegatedPermission.Value ` -Classification "low"
Получите объект ServicePrincipal для API. Здесь мы извлекаем объект ServicePrincipal для API Microsoft Graph:
$serviceprincipal = Get-EntraServicePrincipal ` -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
Найдите категорию делегированных разрешений, которую вы хотите удалить:
$classifications = Get-EntraServicePrincipalDelegatedPermissionClassification ` -ServicePrincipalId $serviceprincipal.ObjectId $classificationToRemove = $classifications | Where-Object {$_.PermissionName -eq "User.ReadBasic.All"}
Удаление категории разрешений:
Remove-EntraServicePrincipalDelegatedPermissionClassification ` -ServicePrincipalId $serviceprincipal.ObjectId ` -Id $classificationToRemove.Id
Для классификации разрешений можно использовать Microsoft Graph PowerShell. Классификации разрешений настраиваются в объекте ServicePrincipal API, публикующего разрешения.
Выполните следующую команду, чтобы подключиться к Microsoft Graph PowerShell. Чтобы дать согласие на необходимые области, войдите как минимум в качестве Администратора облачных приложений.
Connect-MgGraph -Scopes "Policy.ReadWrite.PermissionGrant", "Application.Read.All"
Получите объект servicePrincipal для API:
$serviceprincipal = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'"
Прочтите классификации делегированных разрешений для API.
Get-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $serviceprincipal.Id
Получите объект servicePrincipal для API:
$serviceprincipal = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'"
Найдите делегированное разрешение, которому вы хотите присвоить категорию:
$delegatedPermission = $serviceprincipal.Oauth2PermissionScopes | Where-Object {$_.Value -eq "openid"}
Задайте классификацию разрешений:
$params = @{ PermissionId = $delegatedPermission.Id PermissionName = $delegatedPermission.Value Classification = "Low" } New-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $serviceprincipal.Id -BodyParameter $params
Получите объект servicePrincipal для API:
$serviceprincipal = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'"
Найдите категорию делегированных разрешений, которую вы хотите удалить:
$classifications = Get-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $serviceprincipal.Id $classificationToRemove = $classifications | Where-Object {$_.PermissionName -eq "openid"}
Удаление категории разрешений:
Remove-MgServicePrincipalDelegatedPermissionClassification -DelegatedPermissionClassificationId $classificationToRemove.Id -ServicePrincipalId $serviceprincipal.id
Чтобы настроить классификации разрешений для корпоративного приложения, войдите в Graph Explorer как минимум администратор облачных приложений.
Необходимо предоставить согласие на разрешения Policy.ReadWrite.PermissionGrant
и Application.Read.All
.
Выполните следующие запросы в обозревателе Microsoft Graph, чтобы добавить делегированную классификацию разрешений для приложения.
Вывод списка текущих классификаций разрешений для API с помощью следующего вызова API Microsoft Graph.
GET https://graph.microsoft.com/v1.0/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications
В следующем примере мы классифицируем разрешение как "низкое влияние".
Добавьте делегированную классификацию разрешений для API, используя следующий вызов API Microsoft Graph.
POST https://graph.microsoft.com/v1.0/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications
Content-type: application/json
{
"permissionId": "b4e74841-8e56-480b-be8b-910348b18b4c",
"classification": "low"
}
Выполните следующий запрос в обозревателе Microsoft Graph, чтобы удалить делегированную классификацию разрешений для API.
DELETE https://graph.microsoft.com/v1.0/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications/QUjntFaOC0i-i5EDSLGLTAE