// TOM'S HARDWARE ITALIA — INTELLIGENZA ARTIFICIALE
Gli agenti Foundry di Microsoft isolano identità e sessioni
Microsoft separa due controlli distinti per isolare gli agenti ospitati in Microsoft Foundry: uno stabilisce di chi sono i dati che l'agente sta trattando, l'altro decide dove restano il codice e i file della sessione. Il primo si chiama isolamento utente e si affida al token Microsoft Entra di chi chiama l'agente, oppure a un'identità delegata che un'applicazione intermedia gestisce per conto dei propri utenti finali. Il secondo si chiama isolamento di sessione e riguarda il sandbox VM-isolato identificato da un agent_session_id, che Foundry crea alla prima richiesta oppure che l'applicazione fornisce da sé, per riusare lo stesso ambiente con gli stessi file già caricati.
I due controlli restano deliberatamente disaccoppiati, ed è qui che si nasconde il punto delicato: un'azienda può far condividere a più utenti lo stesso sandbox, per esempio in un pool che contiene i costi di calcolo, mantenendo separata solo l'identità. In quel caso il filesystem del sandbox resta condiviso, e tocca all'applicazione partizionare da sé file, righe di database e cache per session ID e identità utente, non a Foundry. Gli agenti ospitati in Foundry sono già disponibili in produzione, ma gli SDK che mettono in pratica questi due controlli, per .NET e Python, restano ancora in versione pre-release, come Microsoft stessa specifica.
Una sessione hosted non è una conversazione: la prima contiene la cronologia dei messaggi e delle chiamate agli strumenti, la seconda il compute del sandbox e i file persistiti, la home directory di lavoro dell'agente. Per l'accesso diretto Foundry risolve l'utente dal token Entra del chiamante; per le applicazioni che gestiscono già un proprio sistema di login, un livello intermedio fidato può inviare un'identità delegata stabile a ogni richiesta, un valore opaco per la struttura, la cui mappatura resta di competenza esclusiva dell'applicazione. La sessione, dal canto suo, può nascere in due modi: Foundry ne crea una nuova alla prima richiesta priva di un identificativo, oppure l'applicazione ne crea una in anticipo tramite il project client, per caricare file prima ancora di invocare l'agente o mantenere pool di sessioni delimitati, come spiega la guida ufficiale sull'isolamento per utente.
Il documento descrive un design a pool in cui un livello intermedio mappa i propri utenti su un insieme delimitato di identificativi di sessione, inviando l'identità delegata a ogni richiesta. Foundry mantiene privata la catena di risposta per ciascun utente, ma il filesystem del sandbox resta condiviso fra chi usa la stessa sessione. La partizione dei dati applicativi, file, righe di database, cache, tocca a chi integra il servizio, non a Microsoft: la stessa combinazione di session ID e identità utente che serve per condividere un sandbox è quella su cui un'applicazione deve costruire la propria separazione, se un utente non deve vedere i file di un altro.
Un bug del genere si è già visto altrove, anche se su un prodotto diverso: nel marzo 2023 alcuni utenti di ChatGPT videro titoli di conversazioni non proprie per un bug in una libreria Redis, e un sottoinsieme più ristretto vide anche dati di fatturazione altrui. È la prova che uno stato condiviso non partizionato a dovere, in un sistema AI, ha già causato un leak concreto fra utenti reali, anche se su un prodotto diverso e con una causa tecnica diversa da quella descritta qui.
Gli agenti ospitati in Foundry hanno già disponibilità generale sulla piattaforma. Gli SDK AgentServer e i pacchetti di hosting per Agent Framework, in .NET e Python, restano invece in versione pre-release: sono proprio gli strumenti che mettono in pratica i due controlli descritti sopra, quelli su cui un'azienda dovrebbe appoggiarsi per isolare correttamente i propri utenti. Chi costruisce oggi un prodotto su Foundry condividendo agenti fra clienti o reparti diversi lavora quindi su una base tecnica reale e già documentata con codice funzionante, ma non ancora collaudata su larga scala in produzion