Настройка классификации разрешений

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

Поддерживаются три классификации разрешений: "Низкий", "Средний" (предварительная версия) и "Высокий" (предварительная версия). В настоящее время можно классифицировать только делегированные разрешения, которые не требуют согласия администратора.

Минимальные разрешения, необходимые для базового входа, — openidprofileэто и emailoffline_accessвсе делегированные разрешения на Microsoft Graph. С этими разрешениями приложение может считывать сведения о профиле вошедшего пользователя и поддерживать этот доступ, даже если пользователь больше не использует приложение.

Необходимые компоненты

Вот что необходимо для настройки классификации разрешений:

  • Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
  • Одна из следующих ролей: Global Администратор istrator, Application Администратор istrator или Cloud Application Администратор istrator

Управление категориями разрешений

Совет

Действия, описанные в этой статье, могут немного отличаться на портале, с который вы начинаете работу.

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

  1. Войдите в Центр администрирования Microsoft Entra как минимум облачные приложения Администратор istrator.
  2. Перейдите к классификациям> разрешений и разрешений приложений>Identity>Applications>Enterprise.
  3. Выберите вкладку для классификации разрешений, которую вы хотите обновить.
  4. Выберите " Добавить разрешения" , чтобы классифицировать другое разрешение.
  5. Выберите API и делегированные разрешения.

В этом примере мы классифицировали минимальный набор разрешений, необходимых для единого входа:

Permission classifications

Для классификации разрешений можно использовать последнюю версию Azure AD PowerShell. Классификации разрешений настраиваются на объекте ServicePrincipal интерфейса API, который публикует разрешения.

Выполните следующую команду, чтобы подключиться к Azure AD PowerShell. Чтобы предоставить согласие на необходимые область, выполните вход как минимум облачный Администратор istrator.

Connect-AzureAD

Вывод списка текущих классификаций разрешений с помощью Azure AD PowerShell

  1. Извлеките объект ServicePrincipal для API. Здесь мы извлекаем объект ServicePrincipal для API Microsoft Graph:

    $api = Get-AzureADServicePrincipal `
        -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
    
  2. Чтение классификации делегированных разрешений для API:

    Get-AzureADMSServicePrincipalDelegatedPermissionClassification `
        -ServicePrincipalId $api.ObjectId | Format-Table Id, PermissionName, Classification
    

Классификация разрешения как "Низкое влияние" с помощью Azure AD PowerShell

  1. Извлеките объект ServicePrincipal для API. Здесь мы извлекаем объект ServicePrincipal для API Microsoft Graph:

    $api = Get-AzureADServicePrincipal `
        -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
    
  2. Найдите делегированное разрешение, которому вы хотите присвоить категорию:

    $delegatedPermission = $api.OAuth2Permissions | Where-Object { $_.Value -eq "User.ReadBasic.All" }
    
  3. Задайте категорию разрешения с помощью его имени и идентификатора:

    Add-AzureADMSServicePrincipalDelegatedPermissionClassification `
       -ServicePrincipalId $api.ObjectId `
       -PermissionId $delegatedPermission.Id `
       -PermissionName $delegatedPermission.Value `
       -Classification "low"
    

Удаление делегированной классификации разрешений с помощью Azure AD PowerShell

  1. Извлеките объект ServicePrincipal для API. Здесь мы извлекаем объект ServicePrincipal для API Microsoft Graph:

    $api = Get-AzureADServicePrincipal `
        -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
    
  2. Найдите категорию делегированных разрешений, которую вы хотите удалить:

    $classifications = Get-AzureADMSServicePrincipalDelegatedPermissionClassification `
        -ServicePrincipalId $api.ObjectId
    $classificationToRemove = $classifications | Where-Object {$_.PermissionName -eq "User.ReadBasic.All"}
    
  3. Удаление категории разрешений:

    Remove-AzureADMSServicePrincipalDelegatedPermissionClassification `
        -ServicePrincipalId $api.ObjectId `
        -Id $classificationToRemove.Id
    

Для классификации разрешений можно использовать Microsoft Graph PowerShell. Классификации разрешений настраиваются на объекте ServicePrincipal интерфейса API, который публикует разрешения.

Выполните следующую команду, чтобы подключиться к Microsoft Graph PowerShell. Чтобы предоставить согласие на необходимые область, выполните вход как минимум облачный Администратор istrator.

Connect-MgGraph -Scopes "Policy.ReadWrite.PermissionGrant".

Вывод списка текущих классификаций разрешений для API с помощью Microsoft Graph PowerShell

  1. Получите объект servicePrincipal для API:

    $api = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" 
    
  2. Чтение классификации делегированных разрешений для API:

    Get-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $api.Id 
    

Классификация разрешения как "Низкое влияние" с помощью Microsoft Graph PowerShell

  1. Получите объект servicePrincipal для API:

    $api = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" 
    
  2. Найдите делегированное разрешение, которому вы хотите присвоить категорию:

    $delegatedPermission = $api.Oauth2PermissionScopes | Where-Object {$_.Value -eq "openid"} 
    
  3. Задайте классификацию разрешений:

    $params = @{ 
       PermissionId = $delegatedPermission.Id 
       PermissionName = $delegatedPermission.Value 
       Classification = "Low"
    } 
    
    New-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $api.Id -BodyParameter $params 
    

Удаление делегированной классификации разрешений с помощью Microsoft Graph PowerShell

  1. Получите объект servicePrincipal для API:

    $api = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" 
    
  2. Найдите категорию делегированных разрешений, которую вы хотите удалить:

    $classifications = Get-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $api.Id 
    
    $classificationToRemove = $classifications | Where-Object {$_.PermissionName -eq "openid"}
    
  3. Удаление категории разрешений:

Remove-MgServicePrincipalDelegatedPermissionClassification -DelegatedPermissionClassificationId $classificationToRemove.Id   -ServicePrincipalId $api.id 

Чтобы настроить классификации разрешений для корпоративного приложения, войдите в Graph Обозреватель как минимум облачные приложения Администратор istrator.

Необходимо предоставить согласие на Policy.ReadWrite.PermissionGrant разрешение.

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

Вывод списка текущих классификаций разрешений для API с помощью API Microsoft Graph

Вывод списка текущих классификаций разрешений для API с помощью следующего вызова API Microsoft Graph.

GET https://graph.microsoft.com/v1.0/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications

Классификация разрешения как "Низкое влияние" с помощью API Microsoft Graph

В следующем примере мы классифицируем разрешение как "низкое влияние".

Добавьте делегированную классификацию разрешений для 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"
}

Удаление делегированной классификации разрешений с помощью API Microsoft Graph

Выполните следующий запрос в обозревателе Microsoft Graph, чтобы удалить делегированную классификацию разрешений для API.

DELETE https://graph.microsoft.com/v1.0/servicePrincipals(appId='00000003-0000-0000-c000-000000000000')/delegatedPermissionClassifications/QUjntFaOC0i-i5EDSLGLTAE

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