Mencantumkan penetapan peran Azure menggunakan REST API

Kontrol akses berbasis peran Azure (Azure RBAC) adalah sistem otorisasi yang Anda gunakan untuk mengelola akses ke sumber daya Azure. Untuk menentukan sumber daya yang dapat diakses oleh pengguna, grup, perwakilan layanan, atau identitas terkelola, Anda mencantumkan penetapan peran mereka. Artikel ini menjelaskan cara mencantumkan penetapan peran menggunakan REST API.

Catatan

Jika organisasi Anda mengalihdayakan fungsi manajemen ke penyedia layanan yang menggunakan Azure Lighthouse, penetapan peran yang dibuat oleh penyedia layanan tersebut tidak akan ditampilkan di sini. Demikian pula, pengguna di penyewa penyedia layanan tidak akan melihat penetapan peran untuk pengguna di penyewa pelanggan, terlepas dari peran yang telah mereka tetapkan.

Catatan

Untuk informasi tentang menampilkan atau menghapus data pribadi, lihat Permintaan Subjek Data Azure untuk GDPR. Untuk informasi selengkapnya tentang GDPR, lihat bagian GDPR di Microsoft Trust Center dan bagian GDPR dari portal Service Trust.

Prasyarat

Anda harus menggunakan versi berikut:

  • 2015-07-01 atau yang lebih baru
  • 2022-04-01 atau yang lebih baru untuk menyertakan kondisi

Untuk informasi selengkapnya, lihat API versi REST API Azure RBAC.

Mencantumkan penetapan peran

Di Azure RBAC, untuk mencantumkan akses, Anda mencantumkan penetapan peran. Untuk mencantumkan penetapan peran, gunakan salah satu REST API Penetapan Peran atau Daftar. Untuk menyempurnakan hasil, Anda menentukan cakupan dan filter opsional.

  1. Mulai dengan permintaan berikut:

    GET https://management.azure.com/{scope}/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01&$filter={filter}
    
  2. Di dalam URI, ganti {scope} dengan cakupan yang ingin Anda cantumkan penetapan perannya.

    Cakupan Jenis
    providers/Microsoft.Management/managementGroups/{groupId1} Grup manajemen
    subscriptions/{subscriptionId1} Langganan
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1 Grup sumber daya
    subscriptions/{subscriptionId1}/resourceGroups/myresourcegroup1/providers/Microsoft.Web/sites/mysite1 Sumber Daya

    Dalam contoh sebelumnya, microsoft.web adalah penyedia sumber daya yang merujuk ke instans App Service. Demikian pula, Anda dapat menggunakan penyedia sumber daya lain dan menentukan cakupannya. Untuk mengetahui informasi selengkapnya, lihat Penyedia sumber daya Azure dan jenis serta operasi penyedia sumber daya Azure yang didukung.

  3. Ganti {filter} dengan kondisi yang ingin Anda terapkan untuk memfilter daftar penetapan peran.

    Filter Deskripsi
    $filter=atScope() Mencantumkan penetapan peran hanya untuk cakupan yang ditentukan, tidak termasuk penetapan peran di subcakupan.
    $filter=assignedTo('{objectId}') Mencantumkan penetapan peran untuk pengguna atau perwakilan layanan yang ditentukan.
    Jika pengguna adalah anggota grup yang memiliki penetapan peran, penetapan peran tersebut juga akan dicantumkan. Filter ini bersifat transitif untuk grup yang berarti bahwa jika pengguna adalah anggota grup serta grup tersebut adalah anggota grup lain yang memiliki penetapan peran, penetapan peran juga tercantum.
    Filter ini hanya dapat menerima ID objek untuk pengguna atau prinsipal layanan. Anda tidak bisa meneruskan ID objek bagi grup.
    $filter=atScope()+and+assignedTo('{objectId}') Mencantumkan penetapan peran untuk perwakilan layanan atau pengguna tertentu serta pada cakupan tertentu.
    $filter=principalId+eq+'{objectId}' Mencantumkan penetapan peran untuk pengguna, grup, atau perwakilan layanan tertentu.

Permintaan berikut mencantumkan semua penetapan peran untuk pengguna tertentu dalam cakupan langganan:

GET https://management.azure.com/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01&$filter=atScope()+and+assignedTo('{objectId1}')

Berikut ini menunjukkan contoh output:

{
    "value": [
        {
            "properties": {
                "roleDefinitionId": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleDefinitions/2a2b9908-6ea1-4ae2-8e65-a410df84e7d1",
                "principalId": "{objectId1}",
                "principalType": "User",
                "scope": "/subscriptions/{subscriptionId1}",
                "condition": null,
                "conditionVersion": null,
                "createdOn": "2022-01-15T21:08:45.4904312Z",
                "updatedOn": "2022-01-15T21:08:45.4904312Z",
                "createdBy": "{createdByObjectId1}",
                "updatedBy": "{updatedByObjectId1}",
                "delegatedManagedIdentityResourceId": null,
                "description": null
            },
            "id": "/subscriptions/{subscriptionId1}/providers/Microsoft.Authorization/roleAssignments/{roleAssignmentId1}",
            "type": "Microsoft.Authorization/roleAssignments",
            "name": "{roleAssignmentId1}"
        }
    ]
}

Langkah berikutnya