Memberikan persetujuan admin di seluruh penyewa ke aplikasi

Dalam artikel ini, Anda mempelajari cara memberikan persetujuan admin di seluruh penyewa ke aplikasi di ID Microsoft Entra. Untuk memahami cara mengonfigurasi pengaturan persetujuan pengguna individual, lihat Mengonfigurasi bagaimana pengguna akhir menyetujui aplikasi.

Saat Anda memberikan persetujuan admin seluruh penyewa ke aplikasi, Anda memberikan akses aplikasi ke izin yang diminta atas nama seluruh organisasi. Memberikan persetujuan admin atas nama organisasi adalah operasi sensitif, yang berpotensi memungkinkan penerbit aplikasi mengakses sebagian besar data organisasi, atau izin untuk melakukan operasi dengan hak istimewa tinggi. Misalnya, manajemen peran, akses penuh ke semua kotak surat atau semua situs web, dan peniruan identitas pengguna penuh. Oleh karena itu Anda perlu meninjau dengan cermat izin yang diminta aplikasi sebelum Anda memberikan persetujuan.

Secara default, memberikan persetujuan admin di seluruh penyewa ke aplikasi memungkinkan semua pengguna untuk mengakses aplikasi kecuali dibatasi. Untuk membatasi pengguna mana yang dapat masuk ke aplikasi, konfigurasikan aplikasi tersebut untuk mewajibkan penugasan pengguna lalu tetapkan pengguna atau grup ke aplikasi.

Penting

Memberikan persetujuan admin di seluruh penyewa dapat mencabut izin yang telah diberikan di seluruh penyewa untuk aplikasi tersebut. Izin yang telah diberikan pengguna atas nama mereka sendiri tidak terpengaruh.

Prasyarat

Memberikan persetujuan admin seluruh penyewa mengharuskan Anda untuk masuk sebagai pengguna yang diberi otorisasi untuk memberikan persetujuan atas nama organisasi.

Untuk memberikan persetujuan admin seluruh penyewa, Anda memerlukan:

  • Akun pengguna Microsoft Entra dengan salah satu peran berikut:

    • Administrator Global atau Administrator Peran Istimewa, untuk memberikan perizinan bagi aplikasi yang meminta izin apa pun, untuk API apa pun.
    • Administrator Aplikasi Cloud atau Administrator Aplikasi, untuk memberikan persetujuan untuk aplikasi yang meminta izin apa pun untuk API apa pun, kecuali peran aplikasi Microsoft Graph (izin aplikasi).
    • Peran direktori kustom yang menyertakan izin untuk memberikan izin ke aplikasi, untuk izin yang diperlukan oleh aplikasi.

Anda dapat memberikan persetujuan admin di seluruh penyewa melalui panel Aplikasi perusahaan jika aplikasi telah disediakan di penyewa Anda. Misalnya, aplikasi dapat disediakan di penyewa Anda jika setidaknya satu pengguna telah menyetujui aplikasi tersebut. Untuk informasi selengkapnya, lihat Bagaimana dan mengapa aplikasi ditambahkan ke ID Microsoft Entra.

Tip

Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.

Untuk memberikan persetujuan admin seluruh penyewa ke aplikasi yang tercantum di panel Aplikasi perusahaan:

  1. Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Aplikasi Cloud.
  2. Telusuri aplikasi Identity>Applications>Enterprise>Semua aplikasi.
  3. Masukkan nama aplikasi yang ada di kotak pencarian, lalu pilih aplikasi dari hasil pencarian.
  4. Pilih Izin di bawah Keamanan. Screenshot shows how to grant tenant-wide admin consent.
  5. Tinjau dengan cermat izin yang diperlukan aplikasi. Jika Anda setuju dengan izin yang diperlukan aplikasi, pilih Berikan persetujuan admin.

Anda dapat memberikan persetujuan admin di seluruh penyewa dari Pendaftaran aplikasi di pusat admin Microsoft Entra untuk aplikasi yang telah dikembangkan dan didaftarkan langsung di penyewa Microsoft Entra Anda.

Untuk memberikan persetujuan admin seluruh penyewa dari Pendaftaran aplikasi:

  1. Di pusat admin Microsoft Entra, telusuri aplikasi Identity>Applications> Pendaftaran aplikasi> Semua aplikasi.
  2. Masukkan nama aplikasi yang ada di kotak pencarian, lalu pilih aplikasi dari hasil pencarian.
  3. Pilih Izin API di bawah Kelola.
  4. Tinjau dengan cermat izin yang diperlukan aplikasi. Jika Anda setuju, pilih Berikan persetujuan admin.

Saat Anda memberikan persetujuan admin di seluruh penyewa menggunakan salah satu metode yang dijelaskan di bagian sebelumnya, jendela terbuka dari pusat admin Microsoft Entra untuk meminta persetujuan admin di seluruh penyewa. Jika Anda mengetahui ID klien (juga dikenal sebagai ID aplikasi) dari aplikasi tersebut, Anda dapat membuat URL yang sama untuk memberikan persetujuan admin seluruh penyewa.

URL persetujuan admin seluruh penyewa mengikuti format berikut:

https://login.microsoftonline.com/{organization}/adminconsent?client_id={client-id}

di mana:

  • {client-id} adalah ID klien aplikasi (juga dikenal sebagai ID aplikasi).
  • {organization} adalah ID penyewa atau nama domain terverifikasi dari penyewa tempat Anda ingin menyetujui aplikasi. Anda dapat menggunakan nilai organizationsyang menyebabkan persetujuan terjadi di penyewa rumah pengguna yang Anda gunakan untuk masuk.

Seperti biasa, tinjau izin yang diminta aplikasi dengan cermat sebelum memberikan persetujuan.

Untuk informasi selengkapnya tentang membuat URL persetujuan admin di seluruh penyewa, lihat Persetujuan admin pada platform identitas Microsoft.

Di bagian ini, Anda memberikan izin yang didelegasikan ke aplikasi Anda. Izin yang didelegasikan adalah izin yang diperlukan aplikasi Anda untuk mengakses API atas nama pengguna yang masuk. Izin ditentukan oleh API sumber daya dan diberikan ke aplikasi perusahaan Anda, yang merupakan aplikasi klien. Persetujuan ini diberikan atas nama semua pengguna.

Dalam contoh berikut, API sumber daya adalah Microsoft Graph id 7ea9e944-71ce-443d-811c-71e8047b557aobjek . Microsoft Graph API menentukan izin yang didelegasikan, User.Read.All dan Group.Read.All. ConsentType adalah AllPrincipals, menunjukkan bahwa Anda menyetujui atas nama semua pengguna di penyewa. ID objek aplikasi perusahaan klien adalah b0d9b9e3-0ecf-4bfd-8dab-9273dd055a941.

Perhatian

Hati-hati! Izin yang diberikan secara terprogram tidak tunduk pada peninjauan atau konfirmasi. Mereka segera berlaku.

  1. Koneksi ke Microsoft Graph PowerShell dan masuk setidaknya Administrator Aplikasi Cloud.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "DelegatedPermissionGrant.ReadWrite.All"
    
  2. Ambil semua izin yang didelegasikan yang ditentukan oleh Microsoft graph (aplikasi sumber daya) di aplikasi penyewa Anda. Identifikasi izin yang didelegasikan yang perlu Anda berikan ke aplikasi klien. Dalam contoh ini, izin delegasi adalah User.Read.All dan Group.Read.All

    Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property Oauth2PermissionScopes | Select -ExpandProperty Oauth2PermissionScopes | fl
    
  3. Berikan izin yang didelegasikan ke aplikasi perusahaan klien dengan menjalankan permintaan berikut.

    $params = @{
    
    "ClientId" = "b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94"
    "ConsentType" = "AllPrincipals"
    "ResourceId" = "7ea9e944-71ce-443d-811c-71e8047b557a"
    "Scope" = "User.Read.All Group.Read.All"
    }
    
    New-MgOauth2PermissionGrant -BodyParameter $params | 
    Format-List Id, ClientId, ConsentType, ResourceId, Scope
    
  4. Konfirmasikan bahwa Anda telah memberikan persetujuan admin luas penyewa dengan menjalankan permintaan berikut.

 Get-MgOauth2PermissionGrant -Filter "clientId eq 'b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94' and consentType eq 'AllPrincipals'" 

Di bagian ini, Anda memberikan izin aplikasi ke aplikasi perusahaan Anda. Izin aplikasi adalah izin yang diperlukan aplikasi Anda untuk mengakses API sumber daya. Izin ditentukan oleh API sumber daya dan diberikan ke aplikasi perusahaan Anda, yang merupakan aplikasi utama. Setelah Anda memberikan akses aplikasi ke API sumber daya, aplikasi berjalan sebagai layanan latar belakang atau daemon tanpa pengguna yang masuk. Izin aplikasi juga dikenal sebagai peran aplikasi.

Dalam contoh berikut, Anda memberikan aplikasi Microsoft Graph (prinsipal ID b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94) peran aplikasi (izin aplikasi) ID df021288-bdef-4463-88db-98f22de89214 yang diekspos oleh API sumber daya ID 7ea9e944-71ce-443d-811c-71e8047b557a.

  1. Koneksi ke Microsoft Graph PowerShell dan masuk sebagai Administrator Global.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
    
  2. Ambil peran aplikasi yang ditentukan oleh Microsoft graph di penyewa Anda. Identifikasi peran aplikasi yang anda butuhkan untuk memberikan aplikasi perusahaan klien. Dalam contoh ini, ID peran aplikasi adalah df021288-bdef-4463-88db-98f22de89214.

    Get-MgServicePrincipal -Filter "displayName eq 'Microsoft Graph'" -Property AppRoles | Select -ExpandProperty appRoles |fl
    
  3. Berikan izin aplikasi (peran aplikasi) ke aplikasi utama dengan menjalankan permintaan berikut.

 $params = @{
  "PrincipalId" ="b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94"
  "ResourceId" = "7ea9e944-71ce-443d-811c-71e8047b557a"
  "AppRoleId" = "df021288-bdef-4463-88db-98f22de89214"
}

New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId 'b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94' -BodyParameter $params | 
  Format-List Id, AppRoleId, CreatedDateTime, PrincipalDisplayName, PrincipalId, PrincipalType, ResourceDisplayName

Gunakan Graph Explorer untuk memberikan izin yang didelegasikan dan aplikasi.

Di bagian ini, Anda memberikan izin yang didelegasikan ke aplikasi Anda. Izin yang didelegasikan adalah izin yang diperlukan aplikasi Anda untuk mengakses API atas nama pengguna yang masuk. Izin ditentukan oleh API sumber daya dan diberikan ke aplikasi perusahaan Anda, yang merupakan aplikasi klien. Persetujuan ini diberikan atas nama semua pengguna.

Anda perlu masuk setidaknya sebagai Administrator Aplikasi Cloud.

Dalam contoh berikut, API sumber daya adalah Microsoft Graph id 7ea9e944-71ce-443d-811c-71e8047b557aobjek . Microsoft Graph API menentukan izin yang didelegasikan, User.Read.All dan Group.Read.All. ConsentType adalah AllPrincipals, menunjukkan bahwa Anda menyetujui atas nama semua pengguna di penyewa. ID objek aplikasi perusahaan klien adalah b0d9b9e3-0ecf-4bfd-8dab-9273dd055a941.

Perhatian

Hati-hati! Izin yang diberikan secara terprogram tidak tunduk pada peninjauan atau konfirmasi. Mereka segera berlaku.

  1. Ambil semua izin yang didelegasikan yang ditentukan oleh Microsoft graph (aplikasi sumber daya) di aplikasi penyewa Anda. Identifikasi izin yang didelegasikan yang perlu Anda berikan ke aplikasi klien. Dalam contoh ini, izin delegasi adalah User.Read.All dan Group.Read.All

    GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,oauth2PermissionScopes
    
  2. Berikan izin yang didelegasikan ke aplikasi perusahaan klien dengan menjalankan permintaan berikut.

    POST https://graph.microsoft.com/v1.0/oauth2PermissionGrants
    
    Request body
    {
       "clientId": "b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94",
       "consentType": "AllPrincipals",
       "resourceId": "7ea9e944-71ce-443d-811c-71e8047b557a",
       "scope": "User.Read.All Group.Read.All"
    }
    
  3. Konfirmasikan bahwa Anda telah memberikan persetujuan admin luas penyewa dengan menjalankan permintaan berikut.

    GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq 'b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94' and consentType eq 'AllPrincipals'
    

Di bagian ini, Anda memberikan izin aplikasi ke aplikasi perusahaan Anda. Izin aplikasi adalah izin yang diperlukan aplikasi Anda untuk mengakses API sumber daya. Izin ditentukan oleh API sumber daya dan diberikan ke aplikasi perusahaan Anda, yang merupakan aplikasi utama. Setelah Anda memberikan akses aplikasi ke API sumber daya, aplikasi berjalan sebagai layanan latar belakang atau daemon tanpa pengguna yang masuk. Izin aplikasi juga dikenal sebagai peran aplikasi.

Dalam contoh berikut, Anda memberikan aplikasi, Microsoft Graph (prinsipal ID b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94) peran aplikasi (izin aplikasi) ID df021288-bdef-4463-88db-98f22de89214 yang diekspos oleh aplikasi ID 7ea9e944-71ce-443d-811c-71e8047b557aperusahaan sumber daya .

Anda perlu menandatangani sebagai Administrator Global.

  1. Ambil peran aplikasi yang ditentukan oleh Microsoft graph di penyewa Anda. Identifikasi peran aplikasi yang anda butuhkan untuk memberikan aplikasi perusahaan klien. Dalam contoh ini, ID peran aplikasi adalah df021288-bdef-4463-88db-98f22de89214

    GET https://graph.microsoft.com/v1.0/servicePrincipals?$filter=displayName eq 'Microsoft Graph'&$select=id,displayName,appId,appRoles
    
  2. Berikan izin aplikasi (peran aplikasi) ke aplikasi utama dengan menjalankan permintaan berikut.

    POST https://graph.microsoft.com/v1.0/servicePrincipals/7ea9e944-71ce-443d-811c-71e8047b557a/appRoleAssignedTo
    
    Request body
    
    {
       "principalId": "b0d9b9e3-0ecf-4bfd-8dab-9273dd055a94",
       "resourceId": "7ea9e944-71ce-443d-811c-71e8047b557a",
       "appRoleId": "df021288-bdef-4463-88db-98f22de89214"
    }
    

Langkah berikutnya