Controllo degli accessi in base al ruolo in Studio AI della piattaforma Azure
Questo articolo illustra come gestire l'accesso (autorizzazione) a un hub di Studio AI della piattaforma Azure. Il controllo degli accessi in base al ruolo di Azure (Azure RBAC) viene usato per gestire l'accesso alle risorse di Azure, ad esempio la possibilità di creare nuove risorse o di usare quelle esistenti. Agli utenti con Microsoft Entra ID vengono assegnati ruoli specifici, che concedono l'accesso alle risorse. Azure fornisce sia ruoli predefiniti che la possibilità di creare ruoli personalizzati.
Avviso
L'applicazione di alcuni ruoli potrebbe limitare la funzionalità dell'interfaccia utente in Studio AI della piattaforma Azure per altri utenti. Ad esempio, se il ruolo di un utente non consente di creare un'istanza di ambiente di calcolo, l'opzione per creare tale istanza non è disponibile in Studio. Questo comportamento è previsto e impedisce all'utente di provare a eseguire operazioni che restituirebbero un errore di accesso negato.
Hub di Studio aI e progetto
In Studio AI della piattaforma Azure sono disponibili due livelli di accesso: l'hub e il progetto. L'hub è la sede dell'infrastruttura (inclusa la configurazione della rete virtuale, le chiavi gestite dal cliente, le identità gestite e i criteri) nonché la posizione in cui si configurano i Servizi di Azure AI. L'accesso all'hub consente di modificare l'infrastruttura, creare nuovi hub e creare progetti. I progetti sono un subset della risorsa dell'hub che funge da aree di lavoro che consentono di creare e distribuire i sistemi di intelligenza artificiale. All'interno di un progetto è possibile sviluppare flussi, distribuire modelli e gestire gli asset del progetto. L'accesso al progetto consente di sviluppare l'intelligenza artificiale end-to-end sfruttando al tempo stesso la configurazione dell'infrastruttura nell'hub.
Uno dei principali vantaggi della relazione tra l'hub e il progetto è che gli sviluppatori possono creare progetti personalizzati che ereditano le impostazioni di sicurezza dell'hub. È anche possibile che gli sviluppatori siano collaboratori di un progetto e non possano creare nuovi progetti.
Ruoli predefiniti per l'hub
L'hub di Studio AI include ruoli predefiniti disponibili per impostazione predefinita.
Ecco una tabella dei ruoli predefiniti e delle relative autorizzazioni per l'hub:
Ruolo | Descrizione |
---|---|
Proprietario | Accesso completo all'hub, inclusa la possibilità di gestire e creare nuovi hub e assegnare le autorizzazioni. Questo ruolo viene assegnato automaticamente al creatore dell'hub |
Collaboratore | L'utente ha accesso completo all'hub, inclusa la possibilità di creare nuovi hub, ma non è in grado di gestire le autorizzazioni dell'hub per la risorsa esistente. |
Sviluppatore di Azure per intelligenza artificiale | Eseguire tutte le azioni tranne creare nuovi hub e gestire le autorizzazioni dell'hub. Ad esempio, gli utenti possono creare progetti, risorse di calcolo e connessioni. Gli utenti possono assegnare autorizzazioni all'interno del progetto. Gli utenti possono interagire con le risorse di Azure per intelligenza artificiale esistenti, ad esempio OpenAI di Azure, Azure AI Search e Servizi di Azure AI. |
Operatore di distribuzione dell'inferenza di Azure per intelligenza artificiale | Eseguire tutte le azioni necessarie per creare una distribuzione di risorse all'interno di un gruppo di risorse. |
Lettore | Accesso in sola lettura all'hub. Questo ruolo viene assegnato automaticamente a tutti i membri del progetto all'interno dell'hub. |
La differenza principale tra Collaboratore e Sviluppatore di Azure per intelligenza artificiale è la possibilità di creare nuovi hub. Se non si vuole che gli utenti creino nuovi hub (a causa della quota, dei costi o solo alla gestione del numero di hub disponibili), assegnare il ruolo di Sviluppatore di intelligenza artificiale.
Solo i ruoli di Proprietario e Collaboratore consentono di creare un hub. Al momento, i ruoli personalizzati non possono concedere l'autorizzazione per creare gli hub.
Ruolo sviluppatore di Intelligenza artificiale di Azure
Il set completo di autorizzazioni per il nuovo ruolo di "Sviluppatore di Azure per intelligenza artificiale" è il seguente:
{
"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
}
]
}
Se il ruolo predefinito Per sviluppatori di intelligenza artificiale di Azure non soddisfa le proprie esigenze, è possibile creare un ruolo personalizzato.
Ruoli predefiniti per i progetti
I progetti in Studio AI include ruoli predefiniti disponibili per impostazione predefinita.
Ecco una tabella dei ruoli predefiniti e delle relative autorizzazioni per il progetto:
Ruolo | Descrizione |
---|---|
Proprietario | Accesso completo al progetto, inclusa la possibilità di assegnare autorizzazioni agli utenti del progetto. |
Collaboratore | L'utente ha accesso completo al progetto, ma non può assegnare autorizzazioni agli utenti del progetto. |
Sviluppatore di Azure per intelligenza artificiale | L'utente può eseguire la maggior parte delle azioni, inclusa la creazione di distribuzioni, ma non può assegnare autorizzazioni agli utenti del progetto. |
Operatore di distribuzione dell'inferenza di Azure per intelligenza artificiale | Eseguire tutte le azioni necessarie per creare una distribuzione di risorse all'interno di un gruppo di risorse. |
Lettore | Accesso in sola lettura al progetto. |
Quando a un utente viene concesso l'accesso a un progetto (ad esempio, tramite la gestione delle autorizzazioni di Studio AI), all'utente vengono assegnati automaticamente altri due ruoli. Il primo ruolo è Lettore nell'hub. Il secondo ruolo è il ruolo Operatore per la distribuzione dell'inferenza, che consente all'utente di creare distribuzioni nel gruppo di risorse in cui si trova il progetto. Questo ruolo è composto da queste due autorizzazioni: "Microsoft.Authorization/*/read"
e "Microsoft.Resources/deployments/*"
.
Per completare lo sviluppo e la distribuzione dell'intelligenza artificiale end-to-end, gli utenti hanno bisogno solo di questi due ruoli assegnati automaticamente e del ruolo di Collaboratore o di Sviluppatore di Azure per intelligenza artificiale in un progetto.
Le autorizzazioni minime necessarie per creare un progetto sono un ruolo con l'azione consentita di Microsoft.MachineLearningServices/workspaces/hubs/join
nell'hub. Il ruolo predefinito di Sviluppatore di Azure per intelligenza artificiale ha questa autorizzazione.
Autorizzazioni del controllo degli accessi in base al ruolo di Azure del servizio di dipendenza
L'hub ha dipendenze da altri servizi di Azure. La tabella seguente elenca le autorizzazioni necessarie per questi servizi quando si crea un hub. La persona che crea l'hub necessita di queste autorizzazioni. La persona che crea un progetto dall'hub non ne ha bisogno.
Autorizzazione | Scopo |
---|---|
Microsoft.Storage/storageAccounts/write |
Creare un account di archiviazione con i parametri specificati, aggiornare le proprietà o i tag o aggiungere un dominio personalizzato per l'account di archiviazione specificato. |
Microsoft.KeyVault/vaults/write |
Crea un nuovo insieme di credenziali delle chiavi o aggiornare le proprietà di un insieme di credenziali delle chiavi esistente. Alcune proprietà potrebbero richiedere più autorizzazioni. |
Microsoft.CognitiveServices/accounts/write |
Scrivere gli account API. |
Microsoft.MachineLearningServices/workspaces/write |
Crea una nuova area di lavoro o aggiornare le proprietà di una esistente. |
Configurazione di esempio del controllo degli accessi in base al ruolo aziendale
Nella tabella di seguito è riportato un esempio di come configurare il controllo degli accessi in base al ruolo per Studio AI della piattaforma Azure per un'azienda.
Utente tipo | Ruolo | Scopo |
---|---|---|
Amministratore IT | Proprietario dell'hub | L'amministratore IT può assicurarsi che l'hub sia configurato in base agli standard aziendali. Può assegnare ai manager il ruolo Collaboratore nella risorsa se vuole consentirgli di creare nuovi hub. In alternativa, può assegnare ai manager il ruolo Sviluppatore di Azure per intelligenza artificiale nella risorsa per non consentire la creazione di un nuovo hub. |
Manager | Collaboratore o Sviluppatore di Azure per intelligenza artificiale nell'hub | I manager possono gestire l'hub, controllare le risorse di calcolo, controllare le connessioni e creare connessioni condivise. |
Responsabile del team/Responsabile degli sviluppatori | Sviluppatore di Azure per intelligenza artificiale nell'hub | I responsabili degli sviluppatori possono creare progetti per il team e risorse condivise (ad esempio, risorse di calcolo e connessioni) a livello dell'hub. Dopo la creazione del progetto, i proprietari del progetto possono invitare altri membri. |
Membri del team/sviluppatori | Collaboratore o Sviluppatore di Azure per intelligenza artificiale nel progetto | Gli sviluppatori possono compilare e distribuire modelli di intelligenza artificiale in un progetto e possono creare asset che consentono lo sviluppo, ad esempio risorse di calcoli e connessioni. |
Accesso alle risorse create all'esterno dell'hub
Quando si crea un hub, le autorizzazioni predefinite per il controllo degli accessi in base al ruolo concedono l'accesso per l'uso della risorsa. Tuttavia, se si vogliono usare le risorse al di fuori degli elementi creati per conto dell'utente, è necessario assicurarsi che:
- Siano state configurate le autorizzazioni per consentire l'accesso alla risorsa che si sta tentando di usare.
- L'hub è autorizzato ad accedervi.
Ad esempio, se si sta provando a utilizzare una nuova risorsa di archiviazione BLOB, è necessario assicurarsi che l'identità gestita dell'hub venga aggiunta al ruolo di Lettore della risorsa di archiviazione BLOB per il BLOB. Se si sta provando a usare una nuova origine di Azure AI Search, potrebbe essere necessario aggiungere l'hub alle assegnazioni del ruolo di Azure AI Search.
Gestire l'accesso con i ruoli
Se si è proprietari di un hub, è possibile aggiungere e rimuovere ruoli per AI Studio. Passare alla pagina Home in AI Studio e selezionare l'hub. Selezionare quindi Utenti per aggiungere e rimuovere utenti per l'hub. È anche possibile gestire le autorizzazioni dal portale di Azure in Controllo di accesso (IAM) o tramite l'interfaccia della riga di comando di Azure. Ad esempio, usare l'interfaccia della riga di comando di Azure per assegnare il ruolo di Sviluppatore di Azure per intelligenza artificiale a "joe@contoso.com" per il gruppo di risorse "this-rg" con il comando seguente:
az role assignment create --role "Azure AI Developer" --assignee "joe@contoso.com" --resource-group this-rg
Creare ruoli personalizzati
Se i ruoli predefiniti non sono sufficienti, è possibile creare ruoli personalizzati. I ruoli personalizzati possono avere le autorizzazioni di lettura, scrittura, eliminazione e calcolo delle risorse in Studio AI. È possibile rendere il ruolo disponibile a un livello di progetto specifico, a un livello di gruppo di risorse specifico o a un livello di sottoscrizione specifico.
Nota
Per creare ruoli personalizzati all'interno di tale risorsa, è necessario essere proprietari della risorsa a tale livello.
L'esempio JSON seguente definisce un ruolo di sviluppatore di AI Studio personalizzato a livello di abbonamento:
{
"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": []
}
]
}
}
Per la procedura di creazione di un ruolo personalizzato, usare uno degli articoli seguenti:
Per altre informazioni sulla creazione di ruoli personalizzati in generale, vedere l'articolo Ruoli personalizzati di Azure.
Assegnazione di ruoli in AI Studio
È possibile aggiungere utenti e assegnare ruoli direttamente da Azure AI Studio a livello di hub o di progetto. Nella pagina di panoramica di un hub o di un progetto selezionare Nuovo utente per aggiungere un utente.
Nota
È possibile selezionare ruoli predefiniti. Se è necessario assegnare ruoli personalizzati, è necessario usare il portale di Azure, l'interfaccia della riga di comando di Azure o Azure PowerShell.
Verrà quindi richiesto di immettere le informazioni utente e selezionare un ruolo predefinito.
Scenario: usare una chiave gestita dal cliente
Quando si configura un hub per usare una chiave gestita dal cliente, per archiviare la chiave si usa Azure Key Vault. L'utente o l'entità servizio usata per creare l'area di lavoro deve avere accesso come Proprietario o Collaboratore all'insieme di credenziali delle chiavi.
Se l'hub di AI Studio è configurato con una identità gestita assegnata dall'utente, all'identità devono essere concessi i ruoli seguenti. Questi ruoli consentono all'identità gestita di creare le risorse di Archiviazione di Azure, Azure Cosmos DB e Ricerca cognitiva di Azure usate quando si usa una chiave gestita dal cliente:
Microsoft.Storage/storageAccounts/write
Microsoft.Search/searchServices/write
Microsoft.DocumentDB/databaseAccounts/write
All'interno dell'insieme di credenziali delle chiavi, l'utente o l'entità servizio deve avere accesso alla chiave per le operazioni di creazione, recupero, eliminazione e rimozione definitiva tramite un criterio di accesso dell'insieme di credenziali delle chiavi. Per altre informazioni, vedere Sicurezza in Azure Key Vault.
Scenario: connessioni che usano l’autenticazione con Microsoft Entra ID
Quando si crea una connessione che usa l’autenticazione con Microsoft Entra ID, è necessario assegnare ruoli agli sviluppatori in modo che possano accedere alla risorsa.
Connessione alle risorse | Ruolo | Descrizione |
---|---|---|
Azure AI Search | Collaboratore | Elencare le chiavi API per elencare gli indici da Studio AI della piattaforma Azure. |
Azure AI Search | Collaboratore ai dati dell'indice di ricerca | Obbligatorio per gli scenari di indicizzazione |
Servizi di Azure AI/Azure OpenAI | Collaboratore Servizi cognitivi OpenAI | Chiamare l'API di inserimento pubblico da Studio AI della piattaforma Azure. |
Servizi di Azure AI/Azure OpenAI | Utente Servizi cognitivi | Elencare le chiavi API da Studio AI della piattaforma Azure. |
Servizi di Azure AI/Azure OpenAI | Collaboratore Servizi cognitivi | Consente le chiamate al piano di controllo. |
Archiviazione BLOB di Azure | Collaboratore dati BLOB di archiviazione | Obbligatorio per la lettura e la scrittura di dati nell'archivio BLOB. |
Azure Data Lake Storage Gen2 | Collaboratore dati BLOB di archiviazione | Obbligatorio per la lettura e la scrittura di dati nel data lake. |
Microsoft OneLake | Collaboratore | Per concedere l'accesso all'area di lavoro di Microsoft Fabric, è necessario concedere loro l'accesso all'area di lavoro di Microsoft Fabric. |
Importante
Se si usa Promptflow con Archiviazione di Azure (incluso Azure Data Lake Storage Gen 2), è necessario assegnare anche il ruolo Collaboratore con privilegi per i dati dei file di archiviazione.
Quando si usano le connessioni autenticate con Microsoft Entra ID nel playground della chat, i servizi devono autorizzarsi vicendevolmente per accedere alle risorse necessarie. L’amministratore che esegue la configurazione deve disporre del ruolo di Proprietario in queste risorse per aggiungere assegnazioni di ruolo. Nella tabella seguente sono elencate le assegnazioni di ruolo necessarie per ogni risorsa. La colonna Assegnatario fa riferimento all’identità gestita assegnata dal sistema della risorsa elencata. La colonna Risorsa fa riferimento alla risorsa a cui l’assegnatario vuole accedere. Ad esempio, Azure OpenAI ha un’identità gestita assegnata dal sistema a cui è necessario assegnare il ruolo Lettore dati dell’indice di ricerca per la risorsa di Azure AI Search.
Ruolo | Assegnatario | Risorsa | Descrizione |
---|---|---|---|
Lettore di dati dell'indice di ricerca | Servizi di Azure AI/Azure OpenAI | Azure AI Search | Il servizio di inferenza esegue una query dei dati dall'indice. Usato solo per gli scenari di inferenza. |
Collaboratore ai dati dell'indice di ricerca | Servizi di Azure AI/Azure OpenAI | Azure AI Search | Accesso in lettura/scrittura al contenuto degli indici. Importare, aggiornare o eseguire query sulla raccolta documenti di un indice. Usato solo per scenari di inserimento e inferenza. |
Collaboratore servizi di ricerca | Servizi di Azure AI/Azure OpenAI | Azure AI Search | Accesso in lettura/scrittura alle definizioni di oggetti (indici, alias, mappe sinonimi, indicizzatori, origini dati e set di competenze). Il servizio di inferenza esegue una query dello schema dell'indice per il mapping automatico dei campi. Il servizio di inserimento dati crea indici, origini dati, set di competenze, indicizzatore ed esegue query dello stato dell'indicizzatore. |
Collaboratore Servizi cognitivi OpenAI | Azure AI Search | Servizi di Azure AI/Azure OpenAI | Competenza personalizzata |
Utente Servizi cognitivi OpenAI | Risorsa Azure OpenAI per il modello della chat | Risorsa Azure OpenAI per il modello di incorporamento | Obbligatorio solo se si usano due risorse Azure OpenAI per comunicare. |
Collaboratore ai dati del BLOB di archiviazione | Azure AI Search | Account di archiviazione di Azure | Legge BLOB e scrive un archivio conoscenze. |
Collaboratore dati BLOB di archiviazione | Servizi di Azure AI/Azure OpenAI | Account di archiviazione di Azure | Legge dal contenitore di input e scrive i risultati della pre-elaborazione nel contenitore di output. |
Nota
Il ruolo Utente OpenAI dei Servizi cognitivi è necessario solo se si usano due risorse Azure OpenAI: una per il modello della chat e una per il modello di incorporamento. Se questo è il caso, abilitare i servizi attendibili e verificare che la connessione per la risorsa Azure OpenAI del modello di incorporamento sia abilitata per Microsoft Entra ID.
Scenario: Usare una risorsa OpenAI di Azure esistente
Quando si crea una connessione a una risorsa OpenAI di Azure esistente, è anche necessario assegnare ruoli agli utenti in modo che possano accedere alla risorsa. È consigliabile assegnare il ruolo Utente OpenAI di Servizi cognitivi o Collaboratore OpenAI di Servizi cognitivi, a seconda delle attività da eseguire. Per informazioni su questi ruoli e sulle attività abilitate, vedere Ruoli OpenAI di Azure.
Scenario: Usare Registro contenitori di Azure
Un'istanza di Registro Azure Container è una dipendenza facoltativa per l'hub di Studio AI della piattaforma Azure. La tabella seguente elenca la matrice di supporto durante l'autenticazione di un hub in Registro Azure Container, a seconda del metodo di autenticazione e della configurazione dell'accesso alla rete pubblica del Registro Azure Container.
Authentication method | L'accesso alla rete pubblica è disabilitato |
Registro Azure Container Accesso alla rete pubblica abilitato |
---|---|---|
Utente amministratore | ✓ | ✓ |
Un'identità gestita assegnata dal sistema hub Studio AI | ✓ | ✓ |
L'identità gestita assegnata dall'utente dell'hub di Studio AI con il ruolo ACRPull assegnato all'identità |
✓ |
Un'identità gestita assegnata dal sistema è automaticamente assegnata ai ruoli corretti quando viene creato l'hub. Se si usa un'identità gestita assegnata dall'utente, è necessario assegnare il ruolo ACRPull all'identità.
Scenario: usare Azure Application Insights per la registrazione
Azure Application Insights è una dipendenza facoltativa per l'hub di Studio AI della piattaforma Azure. La tabella seguente elenca le autorizzazioni necessarie se si vuole usare Application Insights quando si crea un hub. La persona che crea l'hub necessita di queste autorizzazioni. La persona che crea un progetto dall'hub non ha bisogno di queste autorizzazioni.
Autorizzazione | Scopo |
---|---|
Microsoft.Insights/Components/Write |
Scrivere nella configurazione di un componente di Application Insights. |
Microsoft.OperationalInsights/workspaces/write |
Creare una nuova area di lavoro o collegarsi a un'area di lavoro esistente fornendo l'ID cliente dell'area di lavoro esistente. |
Scenario: procuratore unità elaborate con provisioning
L'esempio seguente definisce un ruolo personalizzato in grado di ottenere unità elaborate con provisioning (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": []
}
]
}
}
Scenario: API Assistenti Azure OpenAI
L'esempio seguente definisce un ruolo per uno sviluppatore usando Assistenti 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": []
}
]
}
}
Risoluzione dei problemi
Errore: l'entità di sicurezza non ha accesso all'API/operazione
Sintomi
Quando si usa il playground di chat di Azure AI Studio, viene visualizzato un messaggio di errore che indica che l'entità non ha accesso all'API/operazione. L'errore può includere anche un "Apim-request-id".
Causa
L'utente o l'entità servizio usata per autenticare le richieste ad Azure OpenAI o Ricerca di intelligenza artificiale di Azure non dispone delle autorizzazioni necessarie per accedere alla risorsa.
Soluzione
Assegnare i ruoli seguenti all'utente o all'entità servizio. Il ruolo assegnato dipende dai servizi usati e il livello di accesso richiesto dall'utente o dall'entità servizio:
Accesso al servizio | Ruolo | Descrizione |
---|---|---|
OpenAI di Azure | Collaboratore Servizi cognitivi OpenAI | Chiamare l'API di inserimento pubblico da Studio AI della piattaforma Azure. |
OpenAI di Azure | Utente Servizi cognitivi | Elencare le chiavi API da Studio AI della piattaforma Azure. |
Azure AI Search | Collaboratore ai dati dell'indice di ricerca | Obbligatorio per gli scenari di indicizzazione. |
Azure AI Search | Lettore di dati dell'indice di ricerca | Il servizio di inferenza esegue una query dei dati dall'indice. Usato solo per gli scenari di inferenza. |