Identità gestite in Microsoft Discovery

Microsoft Discovery usa le identità gestite assegnate all'utente (UAMI) per autenticarsi alle risorse Azure per conto dell'utente. Invece di gestire segreti o stringhe di connessione, crei un'identità gestita, le concedi i ruoli Azure necessari e ne specifichi l'ID risorsa quando crei le risorse di rilevazione. La piattaforma di individuazione usa quindi tale identità per accedere agli account di archiviazione, ai registri contenitori, ai servizi di intelligenza artificiale e alle risorse del gruppo di risorse gestite (MRG).

Quali sono i vantaggi delle identità gestite assegnate dall'utente

L'individuazione richiede identità gestite assegnate dall'utente (non assegnate dal sistema) per i motivi seguenti:

Ragione Spiegazione
Proprietà del cliente È possibile creare, gestire e controllare il ciclo di vita dell'identità nella propria sottoscrizione.
Condivisi tra le risorse È possibile riutilizzare un singolo UAMI in un'area di lavoro, in un supercomputer e in operazioni di archiviazione, riducendo così il sovraccarico di gestione.
Assegnazioni di ruolo con provisioning elettronico Assegni i ruoli prima della creazione delle risorse in modo che Discovery disponga fin dall'inizio delle autorizzazioni necessarie.
Collegamento immutabile L'identità dell'area di lavoro e l'identità del cluster supercomputer sono associate in fase di creazione e non possono essere modificate in un secondo momento, garantendo un comportamento di sicurezza coerente. È possibile aggiornare il kubelet del supercomputer e le identità del carico di lavoro dopo la creazione.

Importante

L'identità dell'area di lavoro e l'identità del cluster supercomputer non sono modificabili dopo la creazione. Non è possibile modificarli dopo che ne è stato effettuato il provisioning. È possibile aggiornare l'identità del kubelet e le identità dei carichi di lavoro del supercomputer. Pianificare la strategia di gestione delle identità prima di creare risorse.

Uso dell'identità da parte di Discovery

Quando viene creato un supercomputer oppure un'area di lavoro, il piano di controllo Discovery:

  • Legge l'UAMI: verifica che l'identità esista e che il servizio possa operare su di esso.
  • Si assegna come Operatore di identità gestita: l'entità servizio di Discovery ottiene il ruolo di Operatore di identità gestita sull'identità gestita assegnata dall'utente in modo che possa usare l'identità per le operazioni delle risorse gestite.
  • Usa l'identità gestita assegnata dall'utente in fase di esecuzione: lo strumento in esecuzione nel supercomputer usa l'identità per eseguire il pull delle immagini del contenitore e accedere all'archiviazione BLOB. Gli agenti lo usano per interagire con Azure OpenAI e l'archiviazione.

Slot di identità per il tipo di risorsa

Le diverse risorse di individuazione usano identità gestite in modi diversi.

Workspace

Un'area di lavoro richiede un singolo UAMI fornito tramite la proprietà workspaceIdentity. Discovery usa l'UAMI per:

  • Identifica l'area di lavoro: UAMI è l'entità di sicurezza che collega l'area di lavoro alle risorse della tua sottoscrizione.
  • Leggere e scrivere dati: Archiviazione BLOB di Azure account leggono e scrivono dati tramite contenitori di archiviazione.
  • Scaricare immagini del contenitore: le immagini del contenitore vengono scaricate da Registro Azure Container quando si eseguono strumenti su un supercomputer.

Discovery esegue il provisioning e gestisce il gruppo di risorse gestito (Azure Cosmos DB, servizi AI, indici di ricerca e Azure OpenAI) usando le proprie entità servizio e non l'identità gestita assegnata dall'utente. L'identità gestita assegnata dall'utente non necessita di ruoli per il gruppo di risorse gestito.

Supercomputer

Un supercomputer usa tre slot di identità, che possono fare tutti riferimento allo stesso UAMI per semplicità oppure a UAMI distinti per applicare il principio del privilegio minimo.

Fascia oraria Scopo
Identità del cluster Usato dal piano di controllo AKS per gestire risorse a livello di cluster, come le reti e i bilanciatori di carico.
Identità kubelet Usato a livello di nodo per eseguire il pull delle immagini del contenitore dal Registro Container e accedere alle risorse Azure.
Identità del carico di lavoro Usato come credenziali federate dai pod che eseguono strumenti e agenti nel supercomputer.

Libreria

Una libreria fa riferimento all'identità gestita assegnata dall'utente tramite la proprietà workloadIdentities. Discovery usa le proprie entità servizio per effettuare il provisioning e utilizzare il gruppo di risorse gestito della libreria (AI Search, SQL, Servizi di intelligenza artificiale). Il servizio crea anche un'identità gestita dal sistema all'interno della libreria MRG per l'autenticazione interna da risorsa a risorsa.

Assegnazioni di ruolo obbligatorie

Prima di creare le risorse di individuazione, è necessario assegnare i ruoli predefiniti seguenti all'UAMI. Assegnare questi ruoli nell'ambito del gruppo di risorse .

Ruolo Un ID di definizione del ruolo Scopo
Collaboratore di Microsoft Discovery Platform (anteprima) 01288891-85ee-45a7-b367-9db3b752fc65 Gestire le risorse di individuazione, ad esempio aree di lavoro, progetti, agenti e strumenti.
Collaboratore ai dati di Storage Blob ba92f5b4-2d11-453d-a403-e96b0029c9fe Leggere e scrivere blob negli account di archiviazione di Azure.
AcrPull 7f951dda-4ed3-4680-a7ca-43fe172d538d Scaricare le immagini del container dal registro dei container.

Per altri ruoli necessari in scenari specializzati, vedere Configurare le identità gestite.

Flusso di identità end-to-end tra le risorse Discovery

Quando distribuisci uno stack Discovery completo, la piattaforma crea tre MRG (workspace, bookshelf e supercomputer). Ogni mrg contiene Azure risorse gestite dal servizio.

Cosa gestisce automaticamente il servizio

Quando crei un workspace, un bookshelf o un supercomputer, Discovery esegue automaticamente le seguenti operazioni:

  • Crea assegnazioni di ruolo nel gruppo di risorse gestito in modo che il servizio possa effettuare il provisioning e gestire le risorse del gruppo di risorse gestito. Le risorse includono Microsoft Foundry, Azure Cosmos DB, Azure AI Search, Archiviazione, Azure Key Vault e Servizio Azure Kubernetes (AKS).
  • Assegna il ruolo Operatore di identità gestita all'identità gestita assegnata dall'utente in modo che il servizio possa utilizzarla per le distribuzioni di gruppi di risorse gestite.
  • Crea un'identità gestita dal sistema all'interno di ogni area di lavoro e libreria MRG per l'autenticazione interna da risorsa a risorsa (App contenitore di Azure, Foundry, SQL).

Non è necessario creare o gestire alcuna di queste identità o assegnazioni di ruolo. Sono gestiti dal servizio per l'intero ciclo di vita.

Cosa sei responsabile per

L'utente è responsabile delle attività seguenti:

  • Creare l'UAMI: assegnare i tre ruoli principali (Collaboratore alla piattaforma di individuazione, Collaboratore ai dati dei BLOB di archiviazione e AcrPull) prima di creare le risorse di individuazione.
  • Specificare l'ID risorsa UAMI: immettere l'ID quando si crea un'area di lavoro o un supercomputer.

L'identità gestita assegnata dall'utente in fase di esecuzione

La tua UAMI è l'identità utilizzata da agenti e strumenti in fase di esecuzione.

Operation La risorsa di Azure è stata acceduta Ruolo necessario
Lettura/scrittura di dati nei contenitori di archiviazione Archiviazione BLOB di Azure (archiviazione di oggetti Blob di Azure) Collaboratore ai dati di Storage Blob
Eseguire il pull di immagini del contenitore degli strumenti Container Registry AcrPull
Gestire le risorse di individuazione Fornitore di risorse per il rilevamento Collaboratore di Microsoft Discovery Platform (anteprima)
Gestire la rete del cluster AKS subnet di Rete virtuale di Azure (VNet) Contributore di rete (identità del cluster di supercomputer)

Per il supercomputer, l'UAMI viene usato in tre slot:

  • Identità del cluster: il piano di controllo di AKS la usa per gestire i bilanciatori del carico e la rete.
  • Identità Kubelet: l'agente a livello di nodo lo usa per eseguire il pull delle immagini dal Registro Contenitori e accedere alle risorse Azure.
  • Identità del carico di lavoro: i pod usano credenziali federate per eseguire tool e agenti.

Per indicazioni sulla scelta tra un singolo UAMI condiviso e identità separate per ogni funzione, vedere Raccomandazioni sulle procedure consigliate per l'identità gestita.

Configurazione avanzata: assegnazioni di ruolo granulari per identità

La sezione assegnazioni di ruolo necessarie descrive l'approccio più semplice in cui un singolo UAMI condiviso riceve tutti e tre i ruoli principali nell'ambito del gruppo di risorse. Per gli ambienti di produzione che richiedono un controllo di sicurezza più rigoroso, assegnare identità gestite assegnate dall'utente separate con assegnazioni di ruolo con privilegi minimi con ambito sulle risorse specifiche a cui ogni identità accede.

Importante

L'identità del carico di lavoro è accessibile dagli agenti tramite l'esecuzione degli strumenti. Gli agenti basati su modelli linguistici di grandi dimensioni (LLM) invocano strumenti che utilizzano questa identità in fase di esecuzione, quindi è fondamentale ridurre al minimo i permessi dell'identità del carico di lavoro. Assegnare solo le autorizzazioni strettamente necessarie per le operazioni degli strumenti. Le autorizzazioni generali per l'identità del carico di lavoro creano rischi se un agente usa l'identità oltre l'ambito previsto.

Assegnazioni di ruolo per identità

Nella tabella seguente viene illustrata l'assegnazione di ruolo granulare consigliata per ogni identità quando si usano interfacce utente separate.

Identità Ruolo Ambito Scopo
Identità dell'area di lavoro Collaboratore di Microsoft Discovery Platform (anteprima) Gruppo di risorse Gestire le risorse dell'area di lavoro, ad esempio progetti, distribuzioni di modelli di chat e contenitori di archiviazione.
Identità dell'area di lavoro Collaboratore ai dati di Storage Blob Account di archiviazione Leggere/scrivere i dati dell'area di lavoro, gli artefatti del modello di chat e le risorse di progetto nell'account di archiviazione sottostante.
Identità del cluster Collaboratore alla rete gestita dalla piattaforma Gruppo di risorse del nodo/VNet Gestire la rete a livello di cluster, i bilanciatori del carico e le risorse del gruppo di risorse del nodo.
Identità del cluster Managed Identity Operator (Operatore per identità gestita) Gruppo di risorse del nodo Operare sulle identità gestite per i carichi di lavoro del cluster.
Identità kubelet AcrPull Gruppo di risorse (copre Registro Container) Recuperare le immagini del contenitore per l'esecuzione dello strumento da qualsiasi Registro Container di cui è stato effettuato il provisioning nel gruppo di risorse.
Identità kubelet Collaboratore ai dati di Storage Blob Account di archiviazione Leggere gli artefatti e gli input del carico di lavoro dall'account di archiviazione di supporto durante l'avvio del pod.
Identità del carico di lavoro Collaboratore ai dati di Storage Blob Account di archiviazione Accesso ai dati durante l'esecuzione di strumenti tramite i carichi di lavoro dell'agente (identità federata).

Perché le identità separate migliorano la sicurezza

Quando si usa un’unica UAMI condivisa, l’identità del carico di lavoro, che gli agenti usano tramite l’esecuzione degli strumenti, eredita tutti i ruoli, inclusi Discovery Platform Contributor e AcrPull. Ciò conferisce agli agenti basati su LLM un accesso più ampio del necessario.

Separando le identità:

  • L'identità del carico di lavoro riceve solo il ruolo Storage Blob Data Contributor a livello dell'account di archiviazione, limitando ciò a cui gli agenti possono accedere tramite gli strumenti.
  • L'identità del cluster riceve ruoli di rete e di operatore che non vengono mai resi disponibili ai carichi di lavoro dell'agente.
  • L'identità del kubelet gestisce il prelievo delle immagini e l'accesso ai dati di avvio dei pod ed è isolata dall'esecuzione dello strumento dell'agente.

Questa separazione garantisce che, anche se un agente tenta di usare la propria identità per operazioni successive all'accesso ai dati, la richiesta ha esito negativo a causa di autorizzazioni insufficienti.

Quando usare assegnazioni granulari

Usa identità separate con ruoli con ambito definito quando:

  • L'organizzazione richiede il controllo di accesso con privilegi minimi.
  • Si eseguono strumenti che elaborano dati sensibili e si vogliono limitare il raggio di esplosione.
  • I requisiti di conformità impongono la separazione delle identità del piano di controllo e del piano dati.
  • Si vuole controllare l'accesso ai dati dell'agente indipendentemente dalle operazioni dell'infrastruttura.

Per indicazioni sulla scelta tra identità condivise e separate, vedere Raccomandazioni sulle procedure consigliate per l'identità gestita.

Limitazioni

  • L'identità gestita assegnata dall'utente deve trovarsi nella stessa area della risorsa di Discovery che la usa.
  • L'identità dell'area di lavoro e l'identità del cluster supercomputer non possono essere modificate dopo la creazione della risorsa. È necessario eliminare e ricreare la risorsa. È possibile aggiornare il kubelet del supercomputer e le relative identità del carico di lavoro tramite PATCH.
  • La propagazione dell'assegnazione di ruolo può richiedere fino a 10 minuti. Crea le assegnazioni di ruolo prima di creare le risorse di Discovery.
  • Discovery richiede il ruolo Operatore di identità gestita per l'identità gestita assegnata dall'utente. Se l'assegnazione di ruolo non riesce durante la creazione delle risorse, ad esempio a causa di restrizioni di Criteri di Azure, il provisioning dell'area di lavoro ha esito negativo.