Bagikan melalui


Kontrol akses berbasis peran di Azure AI Studio

Dalam artikel ini, Anda mempelajari cara mengelola akses (otorisasi) ke hub Azure AI Studio. Kontrol akses berbasis peran Azure (Azure RBAC) digunakan untuk mengelola akses ke sumber daya Azure, seperti kemampuan untuk membuat sumber daya baru atau menggunakan sumber daya yang sudah ada. Pengguna di ID Microsoft Entra Anda diberi peran tertentu, yang memberikan akses ke sumber daya. Azure menyediakan peran bawaan dan kemampuan untuk membuat peran kustom.

Peringatan

Menerapkan beberapa peran mungkin membatasi fungsionalitas UI di Azure AI Studio untuk pengguna lain. Misalnya, jika peran pengguna tidak memiliki kemampuan untuk membuat instans komputasi, opsi untuk membuat instans komputasi tidak akan tersedia di studio. Ini adalah perilaku yang diharapkan, dan ini mencegah pengguna agar tidak mencoba operasi yang akan menampilkan kesalahan akses ditolak.

Hub AI Studio vs proyek

Di Azure AI Studio, ada dua tingkat akses: hub dan proyek. Hub adalah rumah untuk infrastruktur (termasuk penyiapan jaringan virtual, kunci yang dikelola pelanggan, identitas terkelola, dan kebijakan) dan tempat Anda mengonfigurasi layanan Azure AI Anda. Akses hub dapat memungkinkan Anda memodifikasi infrastruktur, membuat hub baru, dan membuat proyek. Proyek adalah subset hub yang bertindak sebagai ruang kerja yang memungkinkan Anda membangun dan menyebarkan sistem AI. Dalam proyek, Anda dapat mengembangkan alur, menyebarkan model, dan mengelola aset proyek. Akses proyek memungkinkan Anda mengembangkan AI end-to-end sambil memanfaatkan penyiapan infrastruktur di hub.

Diagram hubungan antara sumber daya AI Studio.

Salah satu manfaat utama hubungan hub dan proyek adalah pengembang dapat membuat proyek mereka sendiri yang mewarisi pengaturan keamanan hub. Anda mungkin juga memiliki pengembang yang merupakan kontributor proyek, dan tidak dapat membuat proyek baru.

Peran default untuk hub

Hub AI Studio memiliki peran bawaan yang tersedia secara default.

Berikut adalah tabel peran bawaan dan izinnya untuk hub:

Peran Deskripsi
Pemilik Akses penuh ke hub, termasuk kemampuan untuk mengelola dan membuat hub baru dan menetapkan izin. Peran ini secara otomatis ditetapkan ke pembuat hub
Kontributor Pengguna memiliki akses penuh ke hub, termasuk kemampuan untuk membuat hub baru, tetapi tidak dapat mengelola izin hub pada sumber daya yang ada.
Azure AI Developer Lakukan semua tindakan kecuali membuat hub baru dan mengelola izin hub. Sebagai contoh, pengguna dapat membuat proyek, menghitung, dan koneksi. Pengguna dapat menetapkan izin dalam proyek mereka. Pengguna dapat berinteraksi dengan sumber daya Azure AI yang ada, seperti Layanan Azure OpenAI, Azure AI Search, dan Azure AI.
Operator Penyebaran Inferensi Azure AI Lakukan semua tindakan yang diperlukan untuk membuat penyebaran sumber daya dalam grup sumber daya.
Pembaca Akses hanya baca ke hub. Peran ini secara otomatis ditetapkan ke semua anggota proyek dalam hub.

Perbedaan utama antara Kontributor dan Pengembang Azure AI adalah kemampuan untuk membuat hub baru. Jika Anda tidak ingin pengguna membuat hub baru (karena kuota, biaya, atau hanya mengelola berapa banyak hub yang Anda miliki), tetapkan peran Pengembang Azure AI.

Hanya peran Pemilik dan Kontributor yang memungkinkan Anda membuat hub. Saat ini, peran kustom tidak dapat memberi Anda izin untuk membuat hub.

Peran Pengembang Azure AI

Serangkaian izin lengkap untuk peran "Pengembang Azure AI" baru adalah sebagai berikut:

{
    "Permissions": [ 
        { 
        "Actions": [
            "Microsoft.MachineLearningServices/workspaces/*/read",
            "Microsoft.MachineLearningServices/workspaces/*/action",
            "Microsoft.MachineLearningServices/workspaces/*/delete",
            "Microsoft.MachineLearningServices/workspaces/*/write",
            "Microsoft.MachineLearningServices/locations/*/read",
            "Microsoft.Authorization/*/read",
            "Microsoft.Resources/deployments/*"
        ],
    
        "NotActions": [
            "Microsoft.MachineLearningServices/workspaces/delete",
            "Microsoft.MachineLearningServices/workspaces/write",
            "Microsoft.MachineLearningServices/workspaces/listKeys/action",
            "Microsoft.MachineLearningServices/workspaces/hubs/write",
            "Microsoft.MachineLearningServices/workspaces/hubs/delete",
            "Microsoft.MachineLearningServices/workspaces/featurestores/write",
            "Microsoft.MachineLearningServices/workspaces/featurestores/delete"
        ], 
        "DataActions": [ 
            "Microsoft.CognitiveServices/accounts/OpenAI/*", 
            "Microsoft.CognitiveServices/accounts/SpeechServices/*", 
            "Microsoft.CognitiveServices/accounts/ContentSafety/*" 
        ], 
        "NotDataActions": [], 
        "Condition": null, 
        "ConditionVersion": null 
        } 
    ] 
}

Jika peran Pengembang Azure AI bawaan tidak memenuhi kebutuhan Anda, Anda dapat membuat peran kustom.

Peran default untuk proyek

Proyek di AI Studio memiliki peran bawaan yang tersedia secara default.

Berikut adalah tabel peran bawaan dan izinnya untuk proyek:

Peran Deskripsi
Pemilik Akses penuh ke proyek, termasuk kemampuan untuk menetapkan izin kepada pengguna proyek.
Kontributor Pengguna memiliki akses penuh ke proyek, tetapi tidak dapat menetapkan izin untuk pengguna proyek.
Azure AI Developer Pengguna dapat melakukan sebagian besar tindakan, termasuk membuat penyebaran, tetapi tidak dapat menetapkan izin kepada pengguna proyek.
Operator Penyebaran Inferensi Azure AI Lakukan semua tindakan yang diperlukan untuk membuat penyebaran sumber daya dalam grup sumber daya.
Pembaca Akses hanya baca ke proyek.

Saat pengguna diberikan akses ke proyek (misalnya, melalui manajemen izin AI Studio), dua peran lagi secara otomatis ditetapkan kepada pengguna. Peran pertama adalah Pembaca di hub. Peran kedua adalah peran Operator Penyebaran Inferensi, yang memungkinkan pengguna untuk membuat penyebaran pada grup sumber daya tempat proyek berada. Peran ini terdiri dari dua izin ini: "Microsoft.Authorization/*/read" dan "Microsoft.Resources/deployments/*".

Untuk menyelesaikan pengembangan dan penyebaran AI end-to-end, pengguna hanya memerlukan dua peran yang ditetapkan otomatis ini dan peran Kontributor atau Pengembang Azure AI pada proyek.

Izin minimum yang diperlukan untuk membuat proyek adalah peran yang memiliki tindakan Microsoft.MachineLearningServices/workspaces/hubs/join yang diizinkan di hub. Peran bawaan Pengembang Azure AI memiliki izin ini.

Izin Azure RBAC layanan dependensi

Hub memiliki dependensi pada layanan Azure lainnya. Tabel berikut mencantumkan izin yang diperlukan untuk layanan ini saat Anda membuat hub. Orang yang membuat hub memerlukan izin ini. Orang yang membuat proyek dari hub tidak memerlukannya.

Izin Tujuan
Microsoft.Storage/storageAccounts/write Buat akun penyimpanan dengan parameter yang ditentukan atau perbarui properti atau tag atau tambahkan domain kustom untuk akun penyimpanan yang ditentukan.
Microsoft.KeyVault/vaults/write Buat brankas kunci baru atau perbarui properti brankas kunci yang ada. Properti tertentu mungkin memerlukan lebih banyak izin.
Microsoft.CognitiveServices/accounts/write Tulis Akun API.
Microsoft.MachineLearningServices/workspaces/write Buat ruang kerja baru atau perbarui properti ruang kerja yang sudah ada.

Contoh penyiapan RBAC perusahaan

Tabel berikut ini adalah contoh cara menyiapkan kontrol akses berbasis peran untuk Azure AI Studio Anda untuk perusahaan.

Persona Peran Tujuan
Admin TI Pemilik hub Admin TI dapat memastikan hub disiapkan ke standar perusahaan mereka. Mereka dapat menetapkan peran Kontributor kepada manajer pada sumber daya jika mereka ingin memungkinkan manajer untuk membuat hub baru. Atau mereka dapat menetapkan peran Pengembang Azure AI kepada manajer pada sumber daya untuk tidak mengizinkan pembuatan hub baru.
Manajer Kontributor atau Pengembang Azure AI di hub Manajer dapat mengelola hub, mengaudit sumber daya komputasi, mengaudit koneksi, dan membuat koneksi bersama.
Pengembang prospek/Prospek tim Pengembang Azure AI di hub Pengembang prospek dapat membuat proyek untuk tim mereka dan membuat sumber daya bersama (seperti komputasi dan koneksi) di tingkat hub. Setelah pembuatan proyek, pemilik proyek dapat mengundang anggota lain.
Anggota/pengembang tim Kontributor atau Pengembang Azure AI pada proyek Pengembang dapat membangun dan menyebarkan model AI dalam proyek dan membuat aset yang memungkinkan pengembangan seperti komputasi dan koneksi.

Akses ke sumber daya yang dibuat di luar hub

Saat Anda membuat hub, izin kontrol akses berbasis peran bawaan memberi Anda akses untuk menggunakan sumber daya. Namun, jika Anda ingin menggunakan sumber daya di luar apa yang dibuat atas nama Anda, Anda perlu memastikan keduanya:

  • Sumber daya yang coba Anda gunakan memiliki izin yang disiapkan untuk memungkinkan Anda mengaksesnya.
  • Hub Anda diizinkan untuk mengaksesnya.

Misalnya, jika Anda mencoba menggunakan penyimpanan Blob baru, Anda perlu memastikan bahwa identitas terkelola hub ditambahkan ke peran Pembaca Penyimpanan Blob untuk Blob. Jika Anda mencoba menggunakan sumber Pencarian Azure AI baru, Anda mungkin perlu menambahkan hub ke penetapan peran Azure AI Search.

Mengelola akses dengan peran

Jika Anda adalah pemilik hub, Anda dapat menambahkan dan menghapus peran untuk AI Studio. Buka Halaman beranda di AI Studio dan pilih hub Anda. Lalu pilih Pengguna untuk menambahkan dan menghapus pengguna untuk hub. Anda juga dapat mengelola izin dari portal Azure di bawah Kontrol Akses (IAM) atau melalui Azure CLI. Misalnya, gunakan Azure CLI untuk menetapkan peran Pengembang Azure AI ke "joe@contoso.com" untuk grup sumber daya "this-rg" dengan perintah berikut:

az role assignment create --role "Azure AI Developer" --assignee "joe@contoso.com" --resource-group this-rg 

Membuat peran kustom

Jika peran bawaan tidak cukup, Anda dapat membuat peran kustom. Peran kustom mungkin memiliki izin baca, tulis, hapus, dan komputasi sumber daya di AI Studio tersebut. Anda dapat membuat peran tersedia pada tingkat proyek tertentu, tingkat grup sumber daya tertentu, atau tingkat langganan tertentu.

Catatan

Anda harus menjadi pemilik sumber daya pada tingkat tersebut untuk membuat peran kustom dalam sumber daya tersebut.

Contoh JSON berikut menentukan peran pengembang AI Studio kustom di tingkat langganan:

{
    "properties": {
        "roleName": "AI Studio Developer",
        "description": "Custom role for AI Studio. At subscription level",
        "assignableScopes": [
            "/subscriptions/<your-subscription-id>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.MachineLearningServices/workspaces/write",
                    "Microsoft.MachineLearningServices/workspaces/endpoints/write",
                    "Microsoft.Storage/storageAccounts/write",
                    "Microsoft.Resources/deployments/validate/action",
                    "Microsoft.KeyVault/vaults/write",
                    "Microsoft.Authorization/roleAssignments/read",
                    "Microsoft.Authorization/roleDefinitions/read",
                    "Microsoft.CognitiveServices/*/read"
                ],
                "notActions": [
                    "Microsoft.MachineLearningServices/workspaces/delete",
                    "Microsoft.MachineLearningServices/workspaces/write",
                    "Microsoft.MachineLearningServices/workspaces/listKeys/action",
                    "Microsoft.MachineLearningServices/workspaces/hubs/write",
                    "Microsoft.MachineLearningServices/workspaces/hubs/delete",
                    "Microsoft.MachineLearningServices/workspaces/featurestores/write",
                    "Microsoft.MachineLearningServices/workspaces/featurestores/delete"
                ],
                "dataActions": [
                    "Microsoft.CognitiveServices/accounts/OpenAI/*/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/generate/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/extensions/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/embeddings/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/images/generations/action"
                ],
                "notDataActions": []
            }
        ]
    }
}

Untuk langkah-langkah dalam membuat peran kustom, gunakan salah satu artikel berikut ini:

Untuk informasi selengkapnya tentang membuat peran kustom secara umum, kunjungi artikel Peran kustom Azure.

Menetapkan peran di AI Studio

Anda dapat menambahkan pengguna dan menetapkan peran langsung dari Azure AI Studio di tingkat hub atau proyek. Dari halaman ringkasan hub atau proyek, pilih Pengguna baru untuk menambahkan pengguna.

Catatan

Anda dibatasi untuk memilih peran bawaan. Jika Anda perlu menetapkan peran kustom, Anda harus menggunakan portal Azure, Azure CLI, atau Azure PowerShell.

Cuplikan layar gambaran umum hub Azure AI Studio dengan tombol pengguna baru disorot.

Anda kemudian diminta untuk memasukkan informasi pengguna dan memilih peran bawaan.

Cuplikan layar permintaan tambahkan pengguna dengan peran yang diatur ke Pengembang Azure AI.

Skenario: Menggunakan kunci yang dikelola pelanggan

Saat mengonfigurasi hub untuk menggunakan kunci yang dikelola pelanggan (CMK), Azure Key Vault digunakan untuk menyimpan kunci. Perwakilan layanan atau pengguna yang digunakan untuk membuat ruang kerja harus memiliki akses pemilik atau kontributor ke brankas kunci.

Jika hub AI Studio Anda dikonfigurasi dengan identitas terkelola yang ditetapkan pengguna, identitas harus diberikan peran berikut. Peran ini memungkinkan identitas terkelola untuk membuat sumber daya Azure Storage, Azure Cosmos DB, dan Azure Search yang digunakan saat menggunakan kunci yang dikelola pelanggan:

  • Microsoft.Storage/storageAccounts/write
  • Microsoft.Search/searchServices/write
  • Microsoft.DocumentDB/databaseAccounts/write

Dalam brankas kunci, pengguna atau perwakilan layanan harus memiliki akses buat, dapatkan, hapus, dan hapus menyeluruh ke kunci melalui kebijakan akses brankas kunci. Untuk informasi selengkapnya, lihat Keamanan Azure Key Vault.

Skenario: Koneksi menggunakan autentikasi ID Microsoft Entra

Saat membuat koneksi yang menggunakan autentikasi ID Microsoft Entra, Anda harus menetapkan peran kepada pengembang Anda sehingga mereka dapat mengakses sumber daya.

Koneksi sumber daya Peran Deskripsi
Pencarian Azure AI Kontributor Mencantumkan Kunci API untuk mencantumkan indeks dari Azure AI Studio.
Pencarian Azure AI Kontributor Data Indeks Pencarian Diperlukan untuk skenario pengindeksan
Layanan Azure AI / Azure OpenAI Kontributor Cognitive Services OpenAI Panggil API penyerapan publik dari Azure AI Studio.
Layanan Azure AI / Azure OpenAI Pengguna Cognitive Services Mencantumkan Kunci API dari Azure AI Studio.
Layanan Azure AI / Azure OpenAI Kontributor Cognitive Services Memungkinkan panggilan ke sarana kontrol.
Azure Blob Storage Kontributor Data Blob Penyimpanan Diperlukan untuk membaca dan menulis data ke penyimpanan blob.
Azure Data Lake Storage Gen 2 Kontributor Data Blob Penyimpanan Diperlukan untuk membaca dan menulis data ke data lake.
Microsoft OneLake Kontributor Untuk memberi seseorang akses ke Microsoft OneLake, Anda harus memberi mereka akses ke ruang kerja Microsoft Fabric Anda.

Penting

Jika Anda menggunakan Promptflow dengan Azure Storage (termasuk Azure Data Lake Storage Gen 2), Anda juga harus menetapkan peran Storage File Data Privileged Contributor .

Saat menggunakan koneksi terautentikasi ID Microsoft Entra di taman bermain obrolan, layanan perlu mengotorisasi satu sama lain untuk mengakses sumber daya yang diperlukan. Admin yang melakukan konfigurasi harus memiliki peran Pemilik pada sumber daya ini untuk menambahkan penetapan peran. Tabel berikut mencantumkan penetapan peran yang diperlukan untuk setiap sumber daya. Kolom Assignee mengacu pada identitas terkelola yang ditetapkan sistem dari sumber daya yang tercantum. Kolom Sumber Daya mengacu pada sumber daya yang perlu diakses oleh penerima tugas. Misalnya, Azure OpenAI memiliki identitas terkelola yang ditetapkan sistem yang perlu ditetapkan peran Pembaca Data Indeks Pencarian untuk sumber daya Pencarian Azure AI.

Peran Penerima tugas Sumber daya Deskripsi
Pembaca Data Indeks Pencarian Layanan Azure AI / Azure OpenAI Pencarian Azure AI Layanan inferensi meminta data dari indeks. Hanya digunakan untuk skenario inferensi.
Kontributor Data Indeks Pencarian Layanan Azure AI / Azure OpenAI Pencarian Azure AI Akses baca-tulis ke konten dalam indeks. Impor, refresh, atau kueri kumpulan dokumen indeks. Hanya digunakan untuk skenario penyerapan dan inferensi.
Kontributor Layanan Pencarian Layanan Azure AI / Azure OpenAI Pencarian Azure AI Akses baca-tulis ke definisi objek (indeks, alias, peta sinonim, pengindeks, sumber data, dan set keterampilan). Layanan inferensi meminta skema indeks untuk pemetaan bidang otomatis. Layanan penyerapan data membuat indeks, sumber data, kumpulan keterampilan, pengindeks, dan mengkueri status pengindeks.
Kontributor Cognitive Services OpenAI Pencarian Azure AI Layanan Azure AI / Azure OpenAI Kemampuan Kustom
Pengguna Cognitive Services OpenAI Sumber Daya Azure OpenAI untuk model obrolan Sumber daya Azure OpenAI untuk menyematkan model Diperlukan hanya jika menggunakan dua sumber daya Azure OpenAI untuk berkomunikasi.
Kontributor Data Blob Penyimpanan Pencarian Azure AI Akun Azure Storage Membaca blob dan menulis penyimpanan pengetahuan.
Kontributor Data Blob Penyimpanan Layanan Azure AI / Azure OpenAI Akun Azure Storage Membaca dari kontainer input dan menulis hasil pra-proses ke kontainer output.

Catatan

Peran Pengguna OpenAI Cognitive Services hanya diperlukan jika Anda menggunakan dua sumber daya Azure OpenAI: satu untuk model obrolan Anda dan satu untuk model penyematan Anda. Jika ini berlaku, aktifkan Layanan Tepercaya DAN pastikan koneksi untuk model penyematan sumber daya Azure OpenAI Anda mengaktifkan ID Microsoft Entra.

Skenario: Menggunakan sumber daya Azure OpenAI yang sudah ada

Saat membuat koneksi ke sumber daya Azure OpenAI yang ada, Anda juga harus menetapkan peran kepada pengguna Anda sehingga mereka dapat mengakses sumber daya. Anda harus menetapkan peran Pengguna OpenAI Cognitive Services atau Kontributor OpenAI Cognitive Services, tergantung pada tugas yang perlu mereka lakukan. Untuk informasi tentang peran ini dan tugas yang mereka aktifkan, lihat Peran Azure OpenAI.

Skenario: Menggunakan Azure Container Registry

Instans Azure Container Registry adalah dependensi opsional untuk hub Azure AI Studio. Tabel berikut mencantumkan matriks dukungan saat mengautentikasi hub ke Azure Container Registry, bergantung pada metode autentikasi dan konfigurasi akses jaringan publik Azure Container Registry.

Metode autentikasi Akses jaringan
publik dinonaktifkan
Akses jaringan Publik Azure Container Registry
diaktifkan
Pengguna admin
Identitas terkelola yang ditetapkan sistem hub AI Studio
Identitas
terkelola yang ditetapkan pengguna hub AI Studio dengan peran ACRPull yang ditetapkan ke identitas

Identitas terkelola yang ditetapkan sistem secara otomatis ditetapkan ke peran yang benar saat hub dibuat. Jika Anda menggunakan identitas terkelola yang ditetapkan pengguna, Anda harus menetapkan peran ACRPull ke identitas.

Skenario: Menggunakan Azure Application Insights untuk pengelogan

Azure Application Insights adalah dependensi opsional untuk hub Azure AI Studio. Tabel berikut mencantumkan izin yang diperlukan jika Anda ingin menggunakan Application Insights saat membuat hub. Orang yang membuat hub memerlukan izin ini. Orang yang membuat proyek dari hub tidak memerlukan izin ini.

Izin Tujuan
Microsoft.Insights/Components/Write Menulis ke konfigurasi komponen application insights.
Microsoft.OperationalInsights/workspaces/write Buat ruang kerja atau tautan baru ke ruang kerja yang sudah ada dengan menyediakan ID pelanggan dari ruang kerja yang ada.

Skenario: Procurer unit throughput yang disediakan

Contoh berikut mendefinisikan peran kustom yang dapat mendapatkan unit throughput yang disediakan (PTU).

{
    "properties": {
        "roleName": "PTU procurer",
        "description": "Custom role to purchase PTU",
        "assignableScopes": [
            "/subscriptions/<your-subscription-id>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.CognitiveServices/accounts/commitmentplans/read",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/write",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/delete",
                    "Microsoft.CognitiveServices/locations/commitmentTiers/read",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/read",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/write",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/delete",
                    "Microsoft.Features/features/read",
                    "Microsoft.Features/providers/features/read",
                    "Microsoft.Features/providers/features/register/action",
                    "Microsoft.Insights/logDefinitions/read",
                    "Microsoft.Insights/metricdefinitions/read",
                    "Microsoft.Insights/metrics/read",
                    "Microsoft.ResourceHealth/availabilityStatuses/read",
                    "Microsoft.Resources/deployments/operations/read",
                    "Microsoft.Resources/subscriptions/operationresults/read",
                    "Microsoft.Resources/subscriptions/read",
                    "Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
                    "Microsoft.Resources/subscriptions/resourceGroups/read"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

Skenario: Azure OpenAI Assistants API

Contoh berikut mendefinisikan peran untuk pengembang menggunakan Asisten Azure OpenAI.

{
    "id": "",
    "properties": {
        "roleName": "Azure OpenAI Assistants API Developer",
        "description": "Custom role to work with Azure OpenAI Assistants API",
        "assignableScopes": [
            "<your-scope>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.CognitiveServices/*/read",
                    "Microsoft.Authorization/roleAssignments/read",
                    "Microsoft.Authorization/roleDefinitions/read"
                ],
                "notActions": [],
                "dataActions": [
                    "Microsoft.CognitiveServices/accounts/OpenAI/*/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/generate/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/extensions/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/embeddings/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/images/generations/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/delete",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/delete",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/delete",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/files/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/steps/read"
                ],
                "notDataActions": []
            }
        ]
    }
}

Pemecahan Masalah

Kesalahan: Prinsipal tidak memiliki akses ke API/Operation

Gejala

Saat menggunakan taman bermain obrolan Azure AI Studio, Anda menerima pesan kesalahan yang menyatakan "Prinsipal tidak memiliki akses ke API/Operasi". Kesalahan juga dapat mencakup "Apim-request-id".

Penyebab

Pengguna atau perwakilan layanan yang digunakan untuk mengautentikasi permintaan ke Azure OpenAI atau Azure AI Search tidak memiliki izin yang diperlukan untuk mengakses sumber daya.

Solusi

Tetapkan peran berikut untuk pengguna atau perwakilan layanan. Peran yang Anda tetapkan tergantung pada layanan yang Anda gunakan dan tingkat akses pengguna atau perwakilan layanan memerlukan:

Layanan sedang diakses Peran Deskripsi
Azure OpenAI Kontributor Cognitive Services OpenAI Panggil API penyerapan publik dari Azure AI Studio.
Azure OpenAI Pengguna Cognitive Services Mencantumkan Kunci API dari Azure AI Studio.
Pencarian Azure AI Kontributor Data Indeks Pencarian Diperlukan untuk skenario pengindeksan.
Pencarian Azure AI Pembaca Data Indeks Pencarian Layanan inferensi meminta data dari indeks. Hanya digunakan untuk skenario inferensi.

Langkah berikutnya