İzin sınıflandırmalarını yapılandırma

Bu makalede, Microsoft Entra Id'de izin sınıflandırmalarını yapılandırmayı öğreneceksiniz. İzin sınıflandırmaları, kuruluşunuzun ilkelerine ve risk değerlendirmelerine göre farklı izinlerin etkisini belirlemenize olanak sağlar. Örneğin, kullanıcıların onay vermesine izin verilen izin kümesini belirlemek için onay ilkelerinde izin sınıflandırmalarını kullanabilirsiniz.

Üç izin sınıflandırması desteklenir: "Düşük", "Orta" (önizleme) ve "Yüksek" (önizleme). Şu anda yalnızca yönetici onayı gerektirmeyen temsilci izinleri sınıflandırılabilir.

Temel oturum açma işlemleri için gereken en düşük izinleropenid, profileemailoffline_accessTüm Microsoft Graph'ta temsilci olarak atanan izinlerdir. Bu izinlerle, bir uygulama oturum açmış kullanıcının profilinin ayrıntılarını okuyabilir ve kullanıcı artık uygulamayı kullanmadığında bile bu erişimi koruyabilir.

Önkoşullar

İzin sınıflandırmalarını yapılandırmak için şunları yapmanız gerekir:

  • Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
  • Aşağıdaki rollerden biri: Global Yönetici istrator, Application Yönetici istrator veya Cloud Application Yönetici istrator

İzin sınıflandırmalarını yönetme

Bahşiş

Bu makaledeki adımlar, başladığınız portala göre biraz değişiklik gösterebilir.

Microsoft Entra yönetim merkezini kullanarak izinleri sınıflandırmak için şu adımları izleyin:

  1. Microsoft Entra yönetim merkezinde en az Bulut Uygulaması Yönetici istrator olarak oturum açın.
  2. Kimlik>Uygulamaları>Kurumsal uygulamaları>Onayı ve izinleri İzin sınıflandırmaları'na> göz atın.
  3. Güncelleştirmek istediğiniz izin sınıflandırmasının sekmesini seçin.
  4. Başka bir izni sınıflandırmak için İzin ekle'yi seçin.
  5. API'yi ve ardından temsilci izinlerini seçin.

Bu örnekte, çoklu oturum açma için gereken en düşük izin kümesini sınıflandırdık:

Permission classifications

İzinleri sınıflandırmak için en son Azure AD PowerShell'i kullanabilirsiniz. İzin sınıflandırmaları, izinleri yayımlayan API'nin ServicePrincipal nesnesinde yapılandırılır.

Azure AD PowerShell'e bağlanmak için aşağıdaki komutu çalıştırın. Gerekli kapsamları kabul etmek için en azından Bulut Uygulaması Yönetici istrator olarak oturum açın.

Connect-AzureAD

Azure AD PowerShell kullanarak geçerli izin sınıflandırmalarını listeleme

  1. API için ServicePrincipal nesnesini alın. Burada Microsoft Graph API'sinin ServicePrincipal nesnesini alıyoruz:

    $api = Get-AzureADServicePrincipal `
        -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
    
  2. API için temsilci izin sınıflandırmalarını okuyun:

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

Azure AD PowerShell kullanarak bir izni "Düşük etki" olarak sınıflandırma

  1. API için ServicePrincipal nesnesini alın. Burada Microsoft Graph API'sinin ServicePrincipal nesnesini alıyoruz:

    $api = Get-AzureADServicePrincipal `
        -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
    
  2. Sınıflandırmak istediğiniz temsilci iznini bulun:

    $delegatedPermission = $api.OAuth2Permissions | Where-Object { $_.Value -eq "User.ReadBasic.All" }
    
  3. İzin adını ve kimliğini kullanarak izin sınıflandırmasını ayarlayın:

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

Azure AD PowerShell kullanarak temsilcili izin sınıflandırmasını kaldırma

  1. API için ServicePrincipal nesnesini alın. Burada Microsoft Graph API'sinin ServicePrincipal nesnesini alıyoruz:

    $api = Get-AzureADServicePrincipal `
        -Filter "servicePrincipalNames/any(n:n eq 'https://graph.microsoft.com')"
    
  2. Kaldırmak istediğiniz temsilci izin sınıflandırmasını bulun:

    $classifications = Get-AzureADMSServicePrincipalDelegatedPermissionClassification `
        -ServicePrincipalId $api.ObjectId
    $classificationToRemove = $classifications | Where-Object {$_.PermissionName -eq "User.ReadBasic.All"}
    
  3. İzin sınıflandırmasını silin:

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

İzinleri sınıflandırmak için Microsoft Graph PowerShell'i kullanabilirsiniz. İzin sınıflandırmaları, izinleri yayımlayan API'nin ServicePrincipal nesnesinde yapılandırılır.

Microsoft Graph PowerShell'e bağlanmak için aşağıdaki komutu çalıştırın. Gerekli kapsamları kabul etmek için en azından Bulut Uygulaması Yönetici istrator olarak oturum açın.

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

Microsoft Graph PowerShell kullanarak API için geçerli izin sınıflandırmalarını listeleme

  1. API için servicePrincipal nesnesini alın:

    $api = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" 
    
  2. API için temsilci izin sınıflandırmalarını okuyun:

    Get-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $api.Id 
    

Microsoft Graph PowerShell kullanarak bir izni "Düşük etki" olarak sınıflandırma

  1. API için servicePrincipal nesnesini alın:

    $api = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" 
    
  2. Sınıflandırmak istediğiniz temsilci iznini bulun:

    $delegatedPermission = $api.Oauth2PermissionScopes | Where-Object {$_.Value -eq "openid"} 
    
  3. İzin sınıflandırmasını ayarlayın:

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

Microsoft Graph PowerShell kullanarak temsilcili izin sınıflandırmasını kaldırma

  1. API için servicePrincipal nesnesini alın:

    $api = Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" 
    
  2. Kaldırmak istediğiniz temsilci izin sınıflandırmasını bulun:

    $classifications = Get-MgServicePrincipalDelegatedPermissionClassification -ServicePrincipalId $api.Id 
    
    $classificationToRemove = $classifications | Where-Object {$_.PermissionName -eq "openid"}
    
  3. İzin sınıflandırmasını silin:

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

Kurumsal bir uygulama için izin sınıflandırmalarını yapılandırmak için Graph Explorer'da en az Bulut Uygulaması Yönetici istrator olarak oturum açın.

İzin için onay vermeniz Policy.ReadWrite.PermissionGrant gerekir.

Bir uygulama için temsilci izinleri sınıflandırması eklemek için Microsoft Graph gezgininde aşağıdaki sorguları çalıştırın.

Microsoft Graph API'sini kullanarak BIR API için geçerli izin sınıflandırmalarını listeleme

Aşağıdaki Microsoft Graph API çağrısını kullanarak bir API için geçerli izin sınıflandırmalarını listeleyin.

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

Microsoft Graph API'sini kullanarak bir izni "Düşük etki" olarak sınıflandırma

Aşağıdaki örnekte, izni "düşük etki" olarak sınıflandırırız.

Aşağıdaki Microsoft Graph API çağrısını kullanarak API için temsilcili izin sınıflandırması ekleyin.

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'sini kullanarak temsilcili izin sınıflandırmasını kaldırma

Api için temsilci izin sınıflandırmasını kaldırmak için Microsoft Graph gezgininde aşağıdaki sorguyu çalıştırın.

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

Sonraki adımlar