Bagikan melalui


Memberikan persetujuan admin untuk seluruh tenant ke aplikasi

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

Saat Anda memberikan persetujuan admin tenant seluruh organisasi ke aplikasi, Anda memberikan aplikasi akses ke izin yang diminta atas nama organisasi tersebut. 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 tingkat penyewa ke aplikasi memungkinkan semua pengguna untuk mengakses aplikasi kecuali ada pembatasan lain yang diterapkan. 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 administrator untuk seluruh tenant dapat mencabut izin yang telah diberikan sebelumnya 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 Peran Istimewa, untuk memberikan persetujuan untuk 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, sesuai dengan izin yang diperlukan oleh aplikasi tersebut.

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

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

  1. Masuk ke pusat admin Microsoft Entra dengan peran setidaknya Administrator Aplikasi Cloud.
  2. Telusuri ke Identity>Applications>Enterprise applications>All applications.
  3. Masukkan nama aplikasi yang ada di kotak pencarian, lalu pilih aplikasi dari hasil pencarian.
  4. Pilih Izin di bawah Keamanan. Cuplikan layar menunjukkan cara memberikan persetujuan admin seluruh penyewa.
  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 tenant-wide melalui Pendaftaran Aplikasi di pusat admin Microsoft Entra untuk aplikasi yang dikembangkan dan didaftarkan secara langsung oleh organisasi Anda dalam tenant Microsoft Entra Anda.

Untuk memberikan persetujuan admin seluruh penyewa dari Pendaftaran aplikasi:

  1. Di pusat admin Microsoft Entra, buka Identitas>Aplikasi>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 yang Anda ingin memberi persetujuan aplikasi di dalamnya. 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 objek aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb. 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 aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

Perhatian

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

  1. Sambungkan ke Microsoft Graph PowerShell dan masuk setidaknya sebagai 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 tenant 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" = "00001111-aaaa-2222-bbbb-3333cccc4444"
    "ConsentType" = "AllPrincipals"
    "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
    "Scope" = "User.Read.All Group.Read.All"
    }
    
    New-MgOauth2PermissionGrant -BodyParameter $params | 
    Format-List Id, ClientId, ConsentType, ResourceId, Scope
    
  4. Konfirmasi bahwa Anda telah memberikan persetujuan admin untuk seluruh penyewa dengan menjalankan permintaan berikut ini.

 Get-MgOauth2PermissionGrant -Filter "clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' 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 aaaaaaaa-bbbb-cccc-1111-222222222222) sebuah peran aplikasi (izin untuk aplikasi) dengan ID df021288-bdef-4463-88db-98f22de89214 yang diekspos oleh API sumber daya dengan ID 11112222-bbbb-3333-cccc-4444dddd5555.

  1. Sambungkan ke Microsoft Graph PowerShell dan masuk sebagai setidaknya Administrator Peran Istimewa.

    Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"
    
  2. Ambil peran aplikasi yang ditentukan oleh Microsoft Graph di tenant Anda. Identifikasi peran aplikasi yang perlu diterapkan pada aplikasi enterprise 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" ="aaaaaaaa-bbbb-cccc-1111-222222222222"
  "ResourceId" = "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1"
  "AppRoleId" = "df021288-bdef-4463-88db-98f22de89214"
}

New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId 'aaaaaaaa-bbbb-cccc-1111-222222222222' -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 dengan ID objek aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb. 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 aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.

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": "00001111-aaaa-2222-bbbb-3333cccc4444",
       "consentType": "AllPrincipals",
       "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
       "scope": "User.Read.All Group.Read.All"
    }
    
  3. Konfirmasikan bahwa Anda telah memberikan persetujuan admin tenant secara menyeluruh dengan menjalankan request berikut.

    GET https://graph.microsoft.com/v1.0/oauth2PermissionGrants?$filter=clientId eq '00001111-aaaa-2222-bbbb-3333cccc4444' 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 Microsoft Graph (dengan ID utama 00001111-aaaa-2222-bbbb-3333cccc4444) dengan peran aplikasi (izin aplikasi) ber-ID df021288-bdef-4463-88db-98f22de89214 yang diekspos oleh aplikasi perusahaan sumber daya dengan ID 11112222-bbbb-3333-cccc-4444dddd5555.

Anda perlu menandatangani sebagai setidaknya Administrator Peran Istimewa.

  1. Ambil peran aplikasi yang ditentukan oleh Microsoft Graph di penyewa Anda. Identifikasi peran aplikasi yang Anda butuhkan untuk memberikan akses aplikasi perusahaan kepada 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/11112222-bbbb-3333-cccc-4444dddd5555/appRoleAssignedTo
    
    Request body
    
    {
       "principalId": "aaaaaaaa-bbbb-cccc-1111-222222222222",
       "resourceId": "a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1",
       "appRoleId": "df021288-bdef-4463-88db-98f22de89214"
    }
    

Langkah berikutnya