Condividi tramite


Controllo degli accessi in base al ruolo nel portale di Azure AI Foundry

Questo articolo illustra come gestire l'accesso (autorizzazione) a un hub di Azure AI Foundry. 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 nel portale di Azure AI Foundry 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 Ai Foundry e progetto

Nel portale di Azure AI Foundry 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.

Diagramma della relazione tra le risorse di AI Foundry.

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 AI Foundry 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 nel portale di AI Foundry hanno 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 del portale di AI Foundry, 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.

Ruolo di amministratore di Intelligenza artificiale di Azure

Prima del 11/19/2024, all'identità gestita assegnata dal sistema creato per l'hub è stato assegnato automaticamente il ruolo Collaboratore per il gruppo di risorse che contiene l'hub e i progetti. Gli hub creati dopo questa data hanno l'identità gestita assegnata dal sistema al ruolo di amministratore di Intelligenza artificiale di Azure. Questo ruolo ha un ambito più ristretto rispetto alle autorizzazioni minime necessarie per l'identità gestita per eseguire le attività.

Il ruolo Di amministratore di Intelligenza artificiale di Azure è attualmente disponibile in anteprima pubblica.

Importante

Gli elementi contrassegnati (anteprima) in questo articolo sono attualmente disponibili in anteprima pubblica. Questa anteprima viene fornita senza un contratto di servizio e non è consigliabile per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.

Il ruolo Di amministratore di Intelligenza artificiale di Azure ha le autorizzazioni seguenti:

{
    "permissions": [
        {
            "actions": [
                "Microsoft.Authorization/*/read",
                "Microsoft.CognitiveServices/*",
                "Microsoft.ContainerRegistry/registries/*",
                "Microsoft.DocumentDb/databaseAccounts/*",
                "Microsoft.Features/features/read",
                "Microsoft.Features/providers/features/read",
                "Microsoft.Features/providers/features/register/action",
                "Microsoft.Insights/alertRules/*",
                "Microsoft.Insights/components/*",
                "Microsoft.Insights/diagnosticSettings/*",
                "Microsoft.Insights/generateLiveToken/read",
                "Microsoft.Insights/logDefinitions/read",
                "Microsoft.Insights/metricAlerts/*",
                "Microsoft.Insights/metricdefinitions/read",
                "Microsoft.Insights/metrics/read",
                "Microsoft.Insights/scheduledqueryrules/*",
                "Microsoft.Insights/topology/read",
                "Microsoft.Insights/transactions/read",
                "Microsoft.Insights/webtests/*",
                "Microsoft.KeyVault/*",
                "Microsoft.MachineLearningServices/workspaces/*",
                "Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action",
                "Microsoft.ResourceHealth/availabilityStatuses/read",
                "Microsoft.Resources/deployments/*",
                "Microsoft.Resources/deployments/operations/read",
                "Microsoft.Resources/subscriptions/operationresults/read",
                "Microsoft.Resources/subscriptions/read",
                "Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
                "Microsoft.Resources/subscriptions/resourceGroups/read",
                "Microsoft.Resources/subscriptions/resourceGroups/write",
                "Microsoft.Storage/storageAccounts/*",
                "Microsoft.Support/*",
                "Microsoft.Search/searchServices/write",
                "Microsoft.Search/searchServices/read",
                "Microsoft.Search/searchServices/delete",
                "Microsoft.Search/searchServices/indexes/*",
                "Microsoft.DataFactory/factories/*"
            ],
            "notActions": [],
            "dataActions": [],
            "notDataActions": []
        }
    ]
}

Convertire un'identità gestita dal sistema esistente nel ruolo di amministratore di Intelligenza artificiale di Azure

Suggerimento

È consigliabile convertire gli hub creati prima del 11/19/2024 per usare il ruolo di amministratore di Intelligenza artificiale di Azure. Il ruolo di amministratore di Intelligenza artificiale di Azure è più limitato rispetto al ruolo Collaboratore usato in precedenza e segue l'entità di privilegi minimi.

È possibile convertire gli hub creati prima del 11/19/2024 usando uno dei metodi seguenti:

  • API REST di Azure: usare una PATCH richiesta all'API REST di Azure per l'area di lavoro. Il corpo della richiesta deve impostare {"properties":{"allowRoleAssignmeentOnRG":true}}. Nell'esempio seguente viene illustrata una PATCH richiesta che usa curl. Sostituire <your-subscription>, <resource-group-name>, <workspace-name>e <YOUR-ACCESS-TOKEN> con i valori per lo scenario. Per altre informazioni sull'uso delle API REST, vedere la documentazione dell'API REST di Azure.

    curl -X PATCH https://management.azure.com/subscriptions/<your-subscription>/resourcegroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>?api-version=2024-04-01-preview -H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
    
  • Interfaccia della riga di comando di Azure: usare il az ml workspace update comando con il --allow-roleassignment-on-rg true parametro . Nell'esempio seguente viene aggiornata un'area di lavoro denominata myworkspace. Questo comando richiede l'estensione dell'interfaccia della riga di comando di Azure Machine Learning versione 2.27.0 o successiva.

    az ml workspace update --name myworkspace --allow-roleassignment-on-rg true
    
  • Azure Python SDK: impostare la allow_roleassignment_on_rg proprietà dell'oggetto Workspace su True e quindi eseguire un'operazione di aggiornamento. Nell'esempio seguente viene aggiornata un'area di lavoro denominata myworkspace. Questa operazione richiede Azure Machine Learning SDK versione 1.17.0 o successiva.

    ws = ml_client.workspaces.get(name="myworkspace")
    ws.allow_roleassignment_on_rg = True
    ws = ml_client.workspaces.begin_update(workspace=ws).result()
    

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

La tabella seguente è un esempio di come configurare il controllo degli accessi in base al ruolo per Azure AI Foundry 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 Foundry. Passare alla home page in AI Foundry 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 risorse di calcolo in tale intelligenza artificiale Foundry. È 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 intelligenza artificiale personalizzato a livello di sottoscrizione:

{
    "properties": {
        "roleName": "AI Foundry Developer",
        "description": "Custom role for AI Foundry. 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 nel portale di AI Foundry

È possibile aggiungere utenti e assegnare ruoli direttamente da Azure AI Foundry a livello di hub o di progetto. Nel Centro gestione selezionare Utenti nella sezione hub o progetto, quindi 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.

Screenshot della panoramica dell'hub di Azure AI Foundry con il pulsante nuovo utente evidenziato.

Verrà quindi richiesto di immettere le informazioni utente e selezionare un ruolo predefinito.

Screenshot della richiesta di aggiunta degli utenti con il ruolo impostato su Azure AI Developer.

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 Foundry è configurato con un'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 Azure AI Foundry.
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 Azure AI Foundry.
Servizi di Azure AI/Azure OpenAI Utente Servizi cognitivi Elencare le chiavi API da Azure AI Foundry.
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 Azure AI Foundry. 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
Identità gestita assegnata dal sistema all'hub di intelligenza artificiale
Identità
gestita assegnata dall'hub di AI Foundry 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

app Azure lication Insights è una dipendenza facoltativa per l'hub di Azure AI Foundry. 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 del portale di Azure AI Foundry, 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 Azure AI Foundry.
OpenAI di Azure Utente Servizi cognitivi Elencare le chiavi API da Azure AI Foundry.
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.

Passaggi successivi