Valutare la sicurezza dei servizi di intelligenza artificiale
Questa unità presenta un riepilogo delle raccomandazioni del Well Architected Framework per la protezione di Azure Open AI
Per altre informazioni, vedere Prospettiva Well-Architected Framework di Azure nel servizio Azure OpenAI
Lo scopo del pilastro Sicurezza è fornire garanzie di riservatezza, integrità e disponibilità al carico di lavoro.
I principi di progettazione in ambito sicurezza forniscono una strategia di progettazione di alto livello per raggiungere questi obiettivi, applicando approcci alla progettazione tecnica che riguarda Azure OpenAI.
Elenco di controllo della progettazione
Avviare la strategia di progettazione in base all'elenco di controllo per la revisione della progettazione in ambito sicurezza e identificare vulnerabilità e controlli per migliorare la postura di sicurezza. Esaminare quindi la baseline di sicurezza di Azure per Azure OpenAI. Infine, estendere la strategia per includere altri approcci in base alle esigenze.
Proteggere la riservatezza: Se si caricano dati di training in Azure OpenAI, usare chiavi gestite dal cliente per la crittografia dei dati, implementare una strategia a rotazione delle chiavi ed eliminare i dati di training, convalida e i risultati del training. Se si usa un archivio dati esterno per i dati di training, seguire le procedure consigliate per la sicurezza di tale archivio. Ad esempio, per Archiviazione BLOB di Azure, usare chiavi gestite dal cliente per la crittografia e implementare una strategia di rotazione delle chiavi. Usare l'accesso basato sull’identità gestita, implementare un perimetro di rete usando endpoint privati e abilitare i log di accesso.
Proteggere la riservatezza: Proteggersi dall'esfiltrazione di dati limitando gli URL in uscita a cui le risorse OpenAI di Azure possono accedere.
Proteggere l'integrità: Implementare i controlli di accesso per autenticare e autorizzare l'accesso degli utenti al sistema usando il principio dei privilegi minimi e impiegando singole identità anziché chiavi.
Proteggere l'integrità: Implementare il rilevamento del rischio di jailbreak per proteggere le distribuzioni del modello linguistico da attacchi prompt injection.
Proteggere la disponibilità: Usare i controlli di sicurezza per evitare attacchi che potrebbero esaurire le quote di utilizzo del modello. È possibile configurare i controlli per isolare il servizio su una rete. Se il servizio deve essere accessibile da Internet, valutare l'uso di un gateway per bloccare l'uso improprio sospetto tramite il routing o la limitazione.
Consigli
Elemento consigliato | Vantaggio |
---|---|
Proteggere le chiavi: Se l'architettura richiede l'autenticazione basata su chiave OpenAI di Azure, archiviare tali chiavi in Azure Key Vault, e non nel codice dell'applicazione. | Separare i segreti dal codice archiviandoli in Key Vault ne riduce la probabilità di fuga. La separazione agevola anche la gestione centrale dei segreti, semplificando le responsabilità come la rotazione delle chiavi. |
Limitare l’accesso: Disabilitare l'accesso pubblico ad Azure OpenAI a meno che il carico di lavoro non lo richieda. Creare endpoint privati se ci si connette dai consumer di una rete virtuale di Azure. | Il controllo dell'accesso ad Azure OpenAI consente di impedire attacchi da utenti non autorizzati. L'uso di endpoint privati garantisce che il traffico di rete rimanga privato tra l'applicazione e la piattaforma. |
Microsoft Entra ID: Usare Microsoft Entra ID per l'autenticazione e per autorizzare l'accesso ad Azure OpenAI tramite il controllo degli accessi in base al ruolo. Disabilitare l'autenticazione locale in Servizi di Azure AI e impostare disableLocalAuth su true . Concedere a identità che eseguono completamenti o generazione di immagini il ruolo utente Servizi cognitivi di OpenAI. Concedere a pipeline di automazione del modello e all’accesso ad hoc per l'analisi scientifica dei dati un ruolo come quello di Collaboratore Servizi cognitivi di OpenAI. |
L'uso di Microsoft Entra ID centralizza il componente di gestione delle identità ed elimina l'uso delle chiavi API. L'uso del controllo degli accessi in base al ruolo con Microsoft Entra ID garantisce che gli utenti o i gruppi dispongano delle esatte autorizzazioni necessarie per svolgere il proprio lavoro. Questo tipo di controllo di accesso dettagliato non è possibile con le chiavi API OpenAI di Azure. |
Usare chiavi gestite dal cliente: Usare chiavi gestite dal cliente per modelli ottimizzati e dati di training caricati in Azure OpenAI. | L'uso delle chiavi gestite dal cliente offre una maggiore flessibilità per creare, ruotare, disabilitare e revocare i controlli di accesso. |
Protezione contro gli attacchi jailbreak: Usare Studio Sicurezza dei contenuti di Azure AI per rilevare i rischi di jailbreak. | Rilevare i tentativi di jailbreak per identificare e bloccare le richieste che tentano di bypassare i meccanismi di sicurezza delle distribuzioni OpenAI di Azure. |