Questo documento del Google Cloud Well-Architected Framework: prospettiva di AI e ML fornisce una panoramica dei principi e dei suggerimenti per garantire che i tuoi deployment di AI e ML soddisfino i requisiti di sicurezza e conformità della tua organizzazione. I suggerimenti contenuti in questo documento sono in linea con il pilastro della sicurezza del Well-Architected Framework.
Il deployment sicuro dei workload di AI e ML è un requisito fondamentale, in particolare negli ambienti aziendali. Per soddisfare questo requisito, devi adottare un approccio di sicurezza olistico che parte dalla concettualizzazione iniziale delle tue soluzioni di AI e ML e si estende allo sviluppo, al deployment e alle operazioni in corso. Google Cloud offre strumenti e servizi efficaci progettati per aiutarti a proteggere i tuoi workload di AI e ML.
I suggerimenti di questo documento sono mappati ai seguenti principi fondamentali:
- Definisci obiettivi e requisiti chiari
- Mantieni la sicurezza dei dati e previeni la perdita o la gestione errata
- Mantieni le pipeline di AI sicure e robuste contro le manomissioni
- Esegui il deployment su sistemi sicuri con strumenti e artefatti sicuri
- Verifica e proteggi gli input
- Monitora, valuta e preparati a rispondere agli output
Per ulteriori informazioni sulla sicurezza dell'AI, puoi anche consultare le seguenti risorse:
- Il Secure AI Framework (SAIF) diGoogle Cloud fornisce una guida completa per la creazione di sistemi di AI sicuri e responsabili. Descrive i principi chiave e le best practice per affrontare le considerazioni sulla sicurezza e sulla conformità durante l'intero ciclo di vita dell'AI.
- Per scoprire di più sull'approccio di Google Cloudalla fiducia nell'AI, consulta il nostro Centro risorse per la conformità.
Definisci obiettivi e requisiti chiari
Una sicurezza efficace di AI e ML è un componente fondamentale della tua strategia aziendale complessiva. È più facile integrare i controlli di sicurezza e conformità richiesti nelle prime fasi del processo di progettazione e sviluppo, anziché aggiungere controlli dopo lo sviluppo.
Fin dall'inizio del processo di progettazione e sviluppo, prendi decisioni appropriate per il tuo ambiente di rischio specifico e le tue priorità aziendali specifiche. Ad esempio, misure di sicurezza eccessivamente restrittive potrebbero proteggere i dati, ma anche ostacolare l'innovazione e rallentare i cicli di sviluppo. Tuttavia, la mancanza di sicurezza può portare a violazioni dei dati, danni alla reputazione e perdite finanziarie, che sono dannosi per gli obiettivi commerciali.
Per definire obiettivi e requisiti chiari, tieni presente i seguenti suggerimenti.
Allinea la sicurezza di AI e ML agli obiettivi commerciali
Per allineare le tue iniziative di sicurezza di AI e ML ai tuoi obiettivi commerciali, utilizza un approccio strategico che integri la sicurezza in ogni fase del ciclo di vita dell'AI. Per seguire questo approccio:
Definisci scopi commerciali e requisiti di sicurezza chiari:
- Identifica gli obiettivi commerciali chiave: definisci obiettivi commerciali chiari che le tue iniziative di AI e ML sono progettate per raggiungere. Ad esempio, i tuoi obiettivi potrebbero essere migliorare la customer experience, ottimizzare le operazioni o sviluppare nuovi prodotti.
- Traduci gli obiettivi in requisiti di sicurezza: quando chiarisci i tuoi obiettivi commerciali, definisci requisiti di sicurezza specifici per supportarli. Ad esempio, il tuo obiettivo potrebbe essere utilizzare l'AI per personalizzare i consigli per i clienti. Per raggiungere questo obiettivo, i tuoi requisiti di sicurezza potrebbero essere la protezione della privacy dei dati dei clienti e la prevenzione dell'accesso non autorizzato agli algoritmi di suggerimento.
Bilancia la sicurezza con le esigenze aziendali:
- Esegui analisi del rischio: identifica potenziali minacce alla sicurezza e vulnerabilità nei tuoi sistemi di AI.
- Dai la priorità alle misure di sicurezza: basa la priorità di queste misure di sicurezza sul loro potenziale impatto sui tuoi obiettivi commerciali.
- Analizza i costi e i vantaggi: assicurati di investire nelle soluzioni più efficaci. Valuta i costi e i vantaggi delle diverse misure di sicurezza.
- Sposta a sinistra la sicurezza: implementa le best practice per la sicurezza fin dalle prime fasi della progettazione e adatta le misure di sicurezza in base alle esigenze aziendali e alle minacce emergenti.
Identifica i potenziali vettori d'attacco e i rischi
Considera i potenziali vettori d'attacco che potrebbero influire sui tuoi sistemi di AI, come data poisoning, inversione del modello o attacchi avversari. Monitora e valuta continuamente la superficie di attacco in evoluzione man mano che il sistema di AI si sviluppa e tieni traccia di nuove minacce e vulnerabilità. Ricorda che le modifiche ai sistemi di AI possono anche introdurre modifiche alla loro superficie di attacco.
Per mitigare i potenziali rischi legali e di reputazione, devi anche soddisfare i requisiti di conformità relativi alla privacy dei dati, ai bias algoritmici e ad altre normative pertinenti.
Per anticipare tempestivamente potenziali minacce e vulnerabilità e fare scelte di progettazione che riducano i rischi, adotta un approccio secure by design.
Google Cloud fornisce una suite completa di strumenti e servizi per aiutarti a implementare un approccio secure by design:
- Gestione della security posture del cloud: utilizza Security Command Center per identificare potenziali vulnerabilità ed errori di configurazione nella tua infrastruttura AI.
- Punteggi di esposizione agli attacchi e percorsi di attacco: perfeziona e utilizza i punteggi di esposizione agli attacchi e i percorsi di attacco generati da Security Command Center.
- Google Threat Intelligence: tieniti al corrente delle nuove minacce e tecniche di attacco che emergono per prendere di mira i sistemi di AI.
- Logging e monitoraggio: monitora le prestazioni e la sicurezza dei tuoi sistemi di AI e rileva eventuali anomalie o attività sospette. Esegui controlli di sicurezza regolari per identificare e risolvere potenziali vulnerabilità nell'infrastruttura e nei modelli di AI.
- Gestione delle vulnerabilità: implementa un processo di gestione delle vulnerabilità per monitorare e correggere le vulnerabilità di sicurezza nei tuoi sistemi di AI.
Per saperne di più, consulta Secure by Design di Google e Implementa la sicurezza by design.
Proteggi i dati e previeni la perdita o la gestione errata
I dati sono un asset prezioso e sensibile che deve essere protetto. La sicurezza dei dati ti aiuta a mantenere la fiducia degli utenti, a supportare i tuoi scopi commerciali e a soddisfare i tuoi requisiti di conformità.
Per contribuire a proteggere i tuoi dati, tieni presente i seguenti consigli.
Rispetta i principi di minimizzazione dei dati
Per garantire la privacy dei dati, attieniti al principio della minimizzazione dei dati. Per ridurre al minimo i dati, non raccogliere, conservare o utilizzare dati che non sono strettamente necessari per i tuoi obiettivi commerciali. Se possibile, utilizza dati sintetici o completamente anonimizzati.
La raccolta dei dati può contribuire a generare analisi e approfondimenti aziendali, ma è fondamentale esercitare discrezione nel processo di raccolta dei dati. Se raccogli informazioni che consentono l'identificazione personale (PII) sul tuo cliente, riveli informazioni sensibili o crei bias o controversie, potresti creare modelli di ML distorti.
Puoi utilizzare le funzionalità di Google Cloud per migliorare la minimizzazione dei dati e la privacy dei dati per vari casi d'uso:
- Per anonimizzare i dati e preservarne l'utilità, applica metodi di trasformazione come la pseudonimizzazione, l'anonimizzazione e la generalizzazione, ad esempio il bucketing. Per implementare questi metodi, puoi utilizzare Sensitive Data Protection.
- Per proteggere le risorse da accessi o manipolazioni prolungati, utilizza le funzionalità di Cloud Storage per controllare i cicli di vita dei dati.
Per le best practice su come implementare la crittografia dei dati, consulta Crittografia crittografia at-rest e in transito nel Well-Architected Framework.
Monitora la raccolta, l'archiviazione e la trasformazione dei dati
I dati di addestramento dell'applicazione di AI presentano i rischi maggiori per l'introduzione di bias e la fuga di dati. Per mantenere la conformità e gestire i dati tra team diversi, stabilisci un livello di governance dei dati per monitorare i flussi di dati, le trasformazioni e l'accesso. Mantieni i log per le attività di accesso e manipolazione dei dati. I log ti aiutano a controllare l'accesso ai dati, rilevare i tentativi di accesso non autorizzati e impedire l'accesso indesiderato.
Puoi utilizzare le funzionalità di Google Cloud per implementare strategie di governance dei dati:
- Per creare una piattaforma di governance dei dati a livello di organizzazione o di reparto, utilizza Knowledge Catalog.
Una piattaforma di governance dei dati può aiutarti a scoprire, gestire, monitorare e governare a livello centralizzato i dati e gli artefatti AI su tutte le tue piattaforme dati. La piattaforma di governance dei dati fornisce anche l'accesso agli utenti attendibili. Con Knowledge Catalog puoi eseguire le seguenti attività:
- Gestisci la derivazione dei dati. BigQuery può anche fornire la derivazione a livello di colonna.
- Gestire i controlli della qualità dei dati e i profili dei dati.
- Gestire il rilevamento, l'esplorazione e l'elaborazione dei dati in diversi data mart.
- Gestisci i metadati delle caratteristiche e gli artefatti del modello.
- Crea un glossario aziendale per gestire i metadati e stabilire un vocabolario standardizzato.
- Arricchisci i metadati con il contesto tramite aspetti e tipi di aspetto.
- Unifica la governance dei dati tra BigLake e le tabelle in formato aperto come Iceberg e Delta.
- Crea un mesh di dati per decentralizzare la proprietà dei dati tra i proprietari dei dati di team o domini diversi. Questa pratica rispetta i principi di sicurezza dei dati e può contribuire a migliorare l'accessibilità dei dati e l'efficienza operativa.
- Ispeziona e invia i risultati dei dati sensibili da BigQuery a Knowledge Catalog.
- Per creare un lakehouse aperto unificato e ben gestito, integra i tuoi data lake e warehouse con servizi di metastore gestiti come Dataproc Metastore e il catalogo di runtime Lakehouse. Un lakehouse aperto utilizza formati di tabella aperti compatibili con diversi motori di trattamento dati.
- Per pianificare il monitoraggio di caratteristiche e gruppi di caratteristiche, utilizza Agent Platform Feature Store.
- Per scansionare i set di dati di Agent Platform a livello di organizzazione, cartella o progetto, utilizza il rilevamento di dati sensibili per Agent Platform. Puoi anche analizzare i profili dati archiviati in BigQuery.
- Per acquisire log in tempo reale e raccogliere metriche relative alle pipeline di dati, utilizza Cloud Logging e Cloud Monitoring. Per raccogliere le tracce di audit delle chiamate API, utilizza Cloud Audit Logs. Non registrare PII o dati riservati negli esperimenti o in server di log diversi.
Implementa controlli degli accessi basati su ruoli con i principi del privilegio minimo
Implementa i controlli degli accessi basati su ruoli (RBAC) per assegnare diversi livelli di accesso in base ai ruoli degli utenti. Gli utenti devono disporre solo delle autorizzazioni minime necessarie per svolgere le attività del proprio ruolo. Assegna le autorizzazioni in base al principio del privilegio minimo in modo che gli utenti abbiano solo l'accesso di cui hanno bisogno, ad esempio nessun accesso, sola lettura o scrittura.
Il controllo dell'accesso basato sui ruoli con privilegio minimo è importante per la sicurezza quando la tua organizzazione utilizza dati sensibili che risiedono in data lake, in Feature Store o in iperparametri per l'addestramento dei modelli. Questa pratica ti aiuta a prevenire il furto di dati, preservare l'integrità del modello e limitare la superficie di attacco o di incidenti.
Per aiutarti a implementare queste strategie di accesso, puoi utilizzare le seguenti funzionalità diGoogle Cloud :
Per implementare la granularità dell'accesso, valuta le seguenti opzioni:
- Mappa i ruoli IAM (Identity and Access Management) di diversi prodotti a un utente, un gruppo o un account di servizio per consentire un accesso granulare. Mappa questi ruoli in base alle esigenze del progetto, ai pattern di accesso o ai tag.
- Imposta policy IAM con condizioni per gestire l'accesso granulare ai dati, al modello e alle configurazioni del modello, come codice, impostazioni delle risorse e iperparametri.
Esplora l'accesso granulare a livello di applicazione che ti aiuta a proteggere i dati sensibili che controlli e condividi al di fuori del tuo team.
- Cloud Storage: imposta le policy IAM su bucket e cartelle gestite.
- BigQuery: utilizza ruoli e autorizzazioni IAM per i set di dati e le risorse al loro interno. Inoltre, limita l'accesso a livello di riga e livello di colonna in BigQuery.
Per limitare l'accesso a determinate risorse, puoi utilizzare le policy sul confine di accesso dell'entità (PAB). Puoi anche utilizzare Privileged Access Manager per controllare l'aumento temporaneo dei privilegi just-in-time per le entità selezionate. In un secondo momento, puoi visualizzare gli audit log per questa attività di Privileged Access Manager.
Per limitare l'accesso alle risorse in base all'indirizzo IP e agli attributi del dispositivo dell'utente finale, puoi estendere le policy di accesso di Identity-Aware Proxy (IAP).
Per creare pattern di accesso per diversi gruppi di utenti, puoi utilizzare il controllo controllo dell'accesso di Agent Platform con IAM per combinare i ruoli predefiniti o personalizzati.
Per proteggere le istanze di Gemini Enterprise Agent Platform Workbench utilizzando i controlli di accesso sensibili al contesto, utilizza Gestore contesto accesso e Chrome Enterprise Premium. Con questo approccio, l'accesso viene valutato ogni volta che un utente si autentica all'istanza.
Implementa misure di sicurezza per lo spostamento dei dati
Implementa perimetri sicuri e altre misure come la crittografia e le limitazioni al movimento dei dati. Queste misure ti aiutano a prevenire l'esfiltrazione di dati e la perdita di dati, che possono causare perdite finanziarie, danni alla reputazione, responsabilità legali e interruzioni delle operazioni aziendali.
Per contribuire a prevenire l'esfiltrazione e la perdita di dati su Google Cloud, puoi utilizzare una combinazione di strumenti e servizi di sicurezza.
Per implementare la crittografia, tieni presente quanto segue:
- Per ottenere un maggiore controllo sulle chiavi di crittografia, utilizza le chiavi di crittografia gestite dal cliente (CMEK) in Cloud Key Management Service. Quando utilizzi le CMEK, i seguenti servizi integrati con CMEK criptano i dati at-rest per te:
- Per proteggere i tuoi dati in Cloud Storage, utilizza la crittografia lato server per archiviare le CMEK. Se gestisci le CMEK sui tuoi server, la crittografia lato server può aiutarti a proteggere le CMEK e i dati associati, anche se il sistema di archiviazione delle CMEK è compromesso.
- Per criptare i dati in transito, utilizza HTTPS per tutte le chiamate API ai servizi di AI e ML. Per applicare HTTPS alle tue applicazioni e API, utilizza i bilanciatori del carico HTTPS.
Per ulteriori best practice su come criptare i dati, consulta Cripta i dati at-rest e in transito nel pilastro della sicurezza del Well-Architected Framework.
Per implementare i perimetri, tieni presente quanto segue:
- Per creare un confine di sicurezza intorno alle tue risorse di AI e ML e impedire l'esfiltrazione di dati dal tuo Virtual Private Cloud (VPC), utilizza i Controlli di servizio VPC per definire un perimetro di servizio. Includi nel perimetro le risorse di AI e ML e i dati sensibili. Per controllare il flusso di dati, configura le regole in entrata e in uscita per il perimetro.
- Per limitare il traffico in entrata e in uscita verso le risorse di AI e ML, configura le regole firewall. Implementa policy che negano tutto il traffico per impostazione predefinita e consentono esplicitamente solo il traffico che soddisfa i tuoi criteri. Per un esempio di policy, consulta Esempio: nega tutte le connessioni esterne ad eccezione di porte specifiche.
Per implementare limitazioni sul movimento dei dati, tieni presente quanto segue:
- Per condividere i dati e scalare oltre i limiti della privacy in un ambiente sicuro, utilizza la condivisione di BigQuery e le data clean room di BigQuery, che forniscono un solido framework di sicurezza e privacy.
- Per condividere i dati direttamente nelle destinazioni integrate dalle dashboard di business intelligence, utilizza l'hub azioni di Looker, che fornisce un ambiente cloud sicuro.
Proteggiti dall'avvelenamento dei dati
Il data poisoning è un tipo di attacco informatico in cui gli aggressori inseriscono dati dannosi nei set di dati di addestramento per manipolare il comportamento del modello o per peggiorare le prestazioni. Questo attacco informatico può rappresentare una grave minaccia per i sistemi di addestramento ML. Per proteggere la validità e la qualità dei dati, adotta pratiche che li salvaguardino. Questo approccio è fondamentale per garantire l'imparzialità, l'affidabilità e l'integrità del modello.
Per monitorare comportamenti incoerenti, trasformazioni o accessi imprevisti ai tuoi dati, configura un sistema completo di monitoraggio e avvisi per le pipeline di dati e di ML.
Le funzionalità diGoogle Cloud possono aiutarti a implementare ulteriori protezioni contro il data poisoning:
Per convalidare l'integrità dei dati, tieni presente quanto segue:
- Implementa controlli di convalida dei dati efficaci prima di utilizzarli per l'addestramento. Verifica i formati, gli intervalli e le distribuzioni dei dati. Puoi utilizzare le funzionalità di qualità dei dati automatica in Knowledge Catalog.
- Utilizza Sensitive Data Protection con Model Armor per sfruttare funzionalità complete di prevenzione della perdita di dati. Per saperne di più, consulta la panoramica di Model Armor. Sensitive Data Protection con Model Armor ti consente di scoprire, classificare e proteggere i dati sensibili, come la proprietà intellettuale. Queste funzionalità possono aiutarti a prevenire l'esposizione non autorizzata di dati sensibili nelle interazioni con gli LLM.
- Per rilevare anomalie nei dati di addestramento che potrebbero indicare un avvelenamento dei dati, utilizza il rilevamento di anomalie in BigQuery con metodi statistici o modelli ML.
Per prepararti a un addestramento efficace, segui questi passaggi:
- Utilizza metodi di ensemble per ridurre l'impatto dei punti dati compromessi. Addestra più modelli su diversi sottoinsiemi di dati con l'ottimizzazione degli iperparametri.
- Utilizza tecniche di aumento dei dati per bilanciare la distribuzione dei dati tra i set di dati. Questo approccio può ridurre l'impatto dell'avvelenamento dei dati e ti consente di aggiungere esempi avversari.
Per incorporare la revisione umana per i dati di addestramento o gli output del modello, segui questi passaggi:
- Analizza le metriche di valutazione del modello per rilevare potenziali bias, anomalie o comportamenti imprevisti che potrebbero indicare un avvelenamento dei dati. Per maggiori dettagli, consulta Valutazione dei modelli in Agent Platform.
- Sfrutta le competenze di dominio per valutare il modello o l'applicazione e identificare pattern o punti dati sospetti che i metodi automatizzati potrebbero non rilevare. Per maggiori dettagli, consulta la panoramica del servizio di valutazione dell'AI generativa.
Per le best practice su come creare piattaforme di dati incentrate sulla sicurezza dell'infrastruttura e sulla sicurezza dei dati, consulta il principio Implementa la sicurezza by design nel Well-Architected Framework.
Mantieni le pipeline di AI sicure e robuste contro le manomissioni
Il codice AI e ML e le pipeline definite dal codice sono asset fondamentali. Il codice non protetto può essere manomesso, il che può portare a fughe di dati, mancata conformità e interruzione di attività aziendali critiche. Mantenere sicuro il codice AI e ML aiuta a garantire l'integrità e il valore dei modelli e degli output dei modelli.
Per proteggere il codice e le pipeline dell'AI, tieni presente i seguenti suggerimenti.
Utilizza pratiche di programmazione sicure
Per prevenire le vulnerabilità, utilizza pratiche di programmazione sicure durante lo sviluppo dei tuoi modelli. Ti consigliamo di implementare la convalida di input e output specifica per l'AI, gestire tutte le dipendenze del software e incorporare in modo coerente i principi di programmazione sicura nel tuo sviluppo. Integra la sicurezza in ogni fase del ciclo di vita dell'AI, dalla pre-elaborazione dei dati al codice dell'applicazione finale.
Per implementare una convalida rigorosa, considera quanto segue:
Per evitare la manipolazione del modello o l'exploit del sistema, convalida e sanifica gli input e gli output nel codice.
- Utilizza Model Armor o LLM ottimizzati per analizzare automaticamente prompt e risposte per individuare i rischi comuni.
- Implementa la convalida dei dati all'interno degli script di importazione e pre-elaborazione dei dati per tipi, formati e intervalli di dati. Per Gemini Enterprise Agent Platform Pipelines o BigQuery, puoi utilizzare Python per implementare questa convalida dei dati.
- Utilizza agenti LLM di assistenza al coding, come CodeMender, per migliorare la sicurezza del codice. Mantieni l'approccio human-in-the-loop per convalidare le modifiche proposte.
Per gestire e proteggere gli endpoint API del tuo modello di AI, utilizza Apigee, che include funzionalità configurabili come la convalida delle richieste, il controllo del traffico e l'autenticazione.
Per contribuire a mitigare il rischio durante l'intero ciclo di vita dell'AI, puoi utilizzare AI Protection per eseguire le seguenti operazioni:
- Scopri l'inventario AI nel tuo ambiente.
- Valuta l'inventario per individuare potenziali vulnerabilità.
- Proteggi gli asset AI con controlli, policy e protezioni.
- Gestisci i sistemi di AI con funzionalità di rilevamento, indagine e risposta.
Per proteggere le dipendenze di codice e artefatti nella pipeline CI/CD, considera quanto segue:
- Per affrontare i rischi che le dipendenze delle librerie open source possono introdurre nel tuo progetto, utilizza Artifact Analysis con Artifact Registry per rilevare le vulnerabilità note. Utilizzare e mantenere le versioni approvate delle librerie. Archivia i tuoi pacchetti ML personalizzati e le dipendenze verificate in un repository Artifact Registry privato.
- Per incorporare l'analisi delle dipendenze nelle pipeline MLOps di Cloud Build, utilizza Autorizzazione binaria. Applica policy che consentono i deployment solo se le immagini container del tuo codice superano i controlli di sicurezza.
- Per ottenere informazioni sulla sicurezza della catena di fornitura del software, utilizza le dashboard nella console Google Cloud che forniscono dettagli su origini, build, artefatti, deployment e runtime. Queste informazioni includono vulnerabilità negli artefatti di build, provenienza della build ed elenchi di dipendenze della distinta base del software (SBOM).
- Per valutare il livello di maturità della sicurezza della catena di fornitura del software, utilizza il framework Supply chain Levels for Software Artifacts (SLSA).
Per integrare in modo coerente i principi di programmazione sicura in ogni fase dello sviluppo, considera quanto segue:
- Per evitare l'esposizione di dati sensibili dalle interazioni con il modello, utilizza Logging con Sensitive Data Protection. Quando utilizzi questi prodotti insieme, puoi controllare quali dati vengono registrati dalle tue applicazioni AI e dai componenti della pipeline e nascondere i dati sensibili.
- Per implementare il principio del privilegio minimo, assicurati che i service account che utilizzi per i job personalizzati, le pipeline e i modelli di cui è stato eseguito il deployment di Agent Platform dispongano solo delle autorizzazioni IAM minime richieste. Per saperne di più, consulta Implementa i controlli degli accessi basati su ruoli con i principi del privilegio minimo.
- Per proteggere le pipeline e gli artefatti di build, comprendi le configurazioni di sicurezza (VPC e Controlli di servizio VPC) nell'ambiente in cui viene eseguito il codice.
Proteggi le pipeline e gli artefatti dei modelli da accessi non autorizzati
Gli artefatti e le pipeline del modello sono proprietà intellettuale e i relativi dati di addestramento contengono anche informazioni proprietarie. Per proteggere i pesi, i file e le configurazioni di deployment dei modelli da manomissioni e vulnerabilità, archivia e accedi a questi artefatti con una sicurezza migliorata. Implementa diversi livelli di accesso per ogni artefatto in base ai ruoli e alle esigenze degli utenti.
Per proteggere gli artefatti del modello, tieni presente quanto segue:
- Per proteggere gli artefatti del modello e altri file sensibili, criptali con Cloud KMS. Questa crittografia contribuisce a proteggere i dati at-rest e in transito, anche se lo spazio di archiviazione sottostante viene compromesso.
- Per proteggere l'accesso ai tuoi file, archiviali in Cloud Storage e configura i controlli degli accessi.
- Per monitorare eventuali configurazioni errate o inadeguate e qualsiasi deviazione dagli standard definiti, utilizza Security Command Center per configurare le security posture.
- Per abilitare controllo dell'accesso granulare dell'accesso e la crittografia at-rest, archivia gli artefatti del modello in Model Registry su Gemini Enterprise Agent Platform. Per una maggiore sicurezza, crea una firma digitale per i pacchetti e i container prodotti durante i processi di build approvati.
- Per usufruire della sicurezza di livello enterprise di Google Cloud, utilizza i modelli disponibili in Model Garden. Model Garden fornisce i modelli proprietari di Google e offre modelli di terze parti dei partner in primo piano.
Per applicare la gestione centralizzata per tutti i cicli di vita di utenti e gruppi e per applicare il principio del privilegio minimo, utilizza IAM.
- Crea e utilizza service account dedicati con privilegi minimi per le tue pipeline MLOps. Ad esempio, il service account di una pipeline di addestramento dispone delle autorizzazioni per leggere i dati solo da un bucket Cloud Storage specifico e per scrivere gli artefatti del modello in Model Registry.
- Utilizza le condizioni IAM per applicare forzatamente il controllo dell'accesso condizionale basato su attributi. Ad esempio, una condizione consente a un account di servizio di attivare una pipeline della piattaforma dell'agente solo se la richiesta proviene da un trigger di Cloud Build attendibile.
Per proteggere le pipeline di deployment, tieni presente quanto segue:
Per gestire le fasi di MLOps su servizi e risorse Google Cloud , utilizza le pipeline della piattaforma agente, che possono integrarsi con altri servizi e fornire un controllo degli accessi di basso livello. Quando esegui nuovamente le pipeline, assicurati di eseguire valutazioni di spiegabilità (come le attribuzioni delle caratteristiche) e controlli di AI responsabile prima di eseguire il deployment degli artefatti del modello. Questi controlli possono aiutarti a rilevare o prevenire i seguenti problemi di sicurezza:
- Modifiche non autorizzate, che possono indicare una manomissione del modello.
- Cross-site scripting (XSS), che può indicare immagini container o dipendenze compromesse.
- Endpoint non sicuri, che possono indicare un'infrastruttura di gestione configurata in modo errato.
Per proteggere le interazioni con i modelli durante l'inferenza, utilizza endpoint privati basati su Private Service Connect con container predefiniti o container personalizzati. Crea firme del modello con uno schema di input e output predefinito.
Per automatizzare il monitoraggio delle modifiche al codice, utilizza Git per la gestione del codice sorgente e integra il controllo della versione con pipeline CI/CD efficaci.
Per saperne di più, consulta Secure AI Framework (SAIF).
Applicare la derivazione e il monitoraggio
Per soddisfare i requisiti di conformità legale che potresti avere, applica la derivazione e il monitoraggio degli asset di AI e ML. La derivazione e il monitoraggio dei dati forniscono record di modifiche completi per dati, modelli e codice. La provenienza del modello fornisce trasparenza e responsabilità durante l'intero ciclo di vita dell'AI e del ML.
Per applicare in modo efficace la derivazione e il monitoraggio in Google Cloud, prendi in considerazione i seguenti strumenti e servizi:
- Per monitorare la tracciabilità di modelli, set di dati e artefatti che vengono criptati automaticamente con crittografia at-rest, utilizza Agent Platform ML Metadata. Registra i metadati relativi alle origini dati, alle trasformazioni, ai parametri del modello e ai risultati degli esperimenti.
- Per monitorare la provenienza degli artefatti della pipeline dalle pipeline di Agent Platform e per cercare risorse di modelli e set di dati, puoi utilizzare Knowledge Catalog. Monitora i singoli artefatti della pipeline quando vuoi eseguire il debug, la risoluzione dei problemi o un'analisi delle cause principali. Per monitorare l'intera pipeline MLOps, che include la derivazione degli artefatti della pipeline, utilizza Agent Platform ML Metadata. Agent Platform ML Metadata consente anche di analizzare le risorse e le esecuzioni. Model Registry applica e gestisce le versioni di ogni modello archiviato.
- Per monitorare le chiamate API e le azioni amministrative, abilita gli audit log per Agent Platform. Analizza gli audit log con Observability Analytics per capire chi ha eseguito l'accesso o modificato dati e modelli e quando. Puoi anche instradare i log a destinazioni di terze parti.
Esegui il deployment su sistemi sicuri con strumenti e artefatti sicuri
Assicurati che il codice e i modelli vengano eseguiti in un ambiente sicuro. Questo ambiente deve disporre di un sistema di controllo dell'accesso efficace e fornire garanzie di sicurezza per gli strumenti e gli artefatti di cui esegui il deployment.
Per eseguire il deployment del codice su sistemi sicuri, tieni conto dei seguenti suggerimenti.
Addestra ed esegui il deployment dei modelli in un ambiente sicuro
Per mantenere l'integrità, la riservatezza e la disponibilità dei sistemi di AI e ML, implementa controlli degli accessi rigorosi che impediscano la manipolazione non autorizzata delle risorse. Questa difesa ti aiuta a:
- Mitigare la manomissione del modello che potrebbe produrre risultati imprevisti o in conflitto.
- Proteggi i tuoi dati di addestramento dalle violazioni della privacy.
- Mantenere l'uptime del servizio.
- Mantieni la conformità alle normative.
- Conquista la fiducia degli utenti.
Per addestrare i modelli di ML in un ambiente con una sicurezza migliorata, utilizza i servizi gestiti in Google Cloud come Cloud Run, Google Kubernetes Engine (GKE) e Managed Service for Apache Spark. Puoi anche utilizzare l'addestramento serverless di Agent Platform.
Questa sezione fornisce suggerimenti per aiutarti a proteggere ulteriormente l'ambiente di addestramento e deployment.
Per proteggere l'ambiente e i perimetri, tieni presente quanto segue:
Quando implementi le misure di sicurezza, come descritto in precedenza, tieni presente quanto segue:
- Per isolare gli ambienti di addestramento e limitare l'accesso, utilizza progetti o VPC dedicati per l'addestramento.
- Per proteggere i dati e il codice sensibili durante l'esecuzione, utilizza Shielded VM o Confidential Computing per i workload di addestramento.
- Per proteggere l'infrastruttura di rete e controllare l'accesso ai modelli di cui hai eseguito il deployment, utilizza VPC, firewall e perimetri di sicurezza.
Quando utilizzi l'addestramento gestito di Gemini Enterprise Agent Platform, puoi utilizzare i seguenti metodi per proteggere la tua infrastruttura di computing:
- Per addestrare job personalizzati che comunicano privatamente con altri servizi Google Cloud autorizzati e che non sono esposti al traffico pubblico, configura un'interfaccia Private Service Connect.
- Per una maggiore sicurezza di rete e una latenza di rete inferiore rispetto a quella che ottieni con un indirizzo IP pubblico, utilizza un indirizzo IP privato per connetterti ai tuoi job di addestramento. Per maggiori dettagli, consulta Utilizza un IP privato per l'addestramento personalizzato.
Quando utilizzi GKE o Cloud Run per configurare un ambiente personalizzato, considera le seguenti opzioni:
- Per proteggere il cluster GKE, utilizza le policy di rete, le policy di sicurezza dei pod e i controlli degli accessi appropriati. Utilizza immagini container attendibili e verificate per i tuoi workload di addestramento. Per analizzare le immagini container alla ricerca di vulnerabilità, utilizza Artifact Analysis.
- Per proteggere il tuo ambiente da container escape e altri attacchi, implementa misure di sicurezza di runtime per Cloud Run Functions. Per proteggere ulteriormente il tuo ambiente, utilizza GKE Sandbox e l'isolamento dei workload.
- Per proteggere i tuoi workload GKE, segui le best practice descritte nella panoramica della sicurezza di GKE.
- Per soddisfare i tuoi requisiti di sicurezza in Cloud Run, consulta la panoramica della progettazione della sicurezza.
Quando utilizzi Managed Service for Apache Spark per l'addestramento del modello, segui le best practice per la sicurezza di Managed Service for Apache Spark.
Per proteggere il tuo deployment, tieni presente quanto segue:
- Quando esegui il deployment dei modelli, utilizza Model Registry. Se esegui il deployment dei modelli nei container, utilizza GKE Sandbox e Container-Optimized OS per migliorare la sicurezza e isolare i workload. Limita l'accesso ai modelli di Model Garden in base ai ruoli e alle responsabilità degli utenti.
- Per proteggere le API del modello, utilizza Apigee o API Gateway. Per prevenire abusi, implementa chiavi API, autenticazione, autorizzazione e limitazione di frequenza. Per controllare l'accesso alle API dei modelli, utilizza chiavi API e meccanismi di autenticazione.
- Per contribuire a proteggere l'accesso ai modelli durante la previsione, utilizza Gemini Enterprise Agent Platform Inference. Per impedire l'esfiltrazione di dati, utilizza i perimetri dei Controlli di servizio VPC per proteggere gli endpoint privati e gestire l'accesso ai modelli sottostanti. Utilizzi gli endpoint privati per consentire l'accesso ai modelli all'interno di una rete VPC. IAM non viene applicato direttamente all'endpoint privato, ma il servizio di destinazione utilizza IAM per gestire l'accesso ai modelli. Per la previsione online, ti consigliamo di utilizzare Private Service Connect.
- Per monitorare le chiamate API relative al deployment del modello, abilita Cloud Audit Logs per Agent Platform. Le chiamate API pertinenti includono attività come la creazione di endpoint, il deployment di modelli e gli aggiornamenti della configurazione.
- Per estendere l'infrastruttura Google Cloud alle località perimetrali, prendi in considerazione le soluzioni Google Distributed Cloud. Per una soluzione completamente disconnessa, puoi utilizzare Distributed Cloud con air gap, che non richiede la connettività a Google Cloud.
- Per standardizzare i deployment e garantire la conformità alle esigenze normative e di sicurezza, utilizza Assured Workloads.
Segui le linee guida SLSA per gli artefatti AI
Segui le linee guida standard di Supply-chain Levels for Software Artifacts (SLSA) per gli artefatti specifici dell'AI, come modelli e pacchetti software.
SLSA è un framework di sicurezza progettato per aiutarti a migliorare l'integrità degli artefatti software e a prevenire le manomissioni. Se rispetti le linee guida SLSA, puoi migliorare la sicurezza della pipeline di AI e ML e degli artefatti che produce. La conformità a SLSA può offrire i seguenti vantaggi:
- Maggiore fiducia negli artefatti di AI e ML: SLSA contribuisce a garantire che i modelli e i pacchetti software non vengano manomessi. Gli utenti possono anche risalire alla fonte dei modelli e dei pacchetti software, il che aumenta la loro fiducia nell'integrità e nell'affidabilità degli artefatti.
- Rischio ridotto di attacchi alla catena di fornitura: SLSA aiuta a mitigare il rischio di attacchi che sfruttano le vulnerabilità nella catena di fornitura del software, come gli attacchi che inseriscono codice dannoso o che compromettono i processi di build.
- Security posture migliorata: SLSA ti aiuta a rafforzare la security posture complessiva dei tuoi sistemi di AI e ML. Questa implementazione può contribuire a ridurre il rischio di attacchi e a proteggere i tuoi asset di valore.
Per implementare SLSA per gli artefatti AI e ML su Google Cloud, segui questi passaggi:
- Comprendi i livelli SLSA: acquisisci familiarità con i diversi livelli SLSA e i relativi requisiti. Man mano che i livelli aumentano, aumenta anche l'integrità che forniscono.
- Valuta il tuo livello attuale: valuta le tue pratiche attuali rispetto al framework SLSA per determinare il tuo livello attuale e identificare le aree di miglioramento.
- Imposta il livello target: determina il livello SLSA appropriato da raggiungere in base alla tua tolleranza al rischio, ai requisiti di sicurezza e alla criticità dei tuoi sistemi di AI e ML.
Implementa i requisiti SLSA: per raggiungere il livello SLSA target, implementa i controlli e le pratiche necessari, che potrebbero includere quanto segue:
- Controllo del codice sorgente: utilizza un sistema di controllo della versione come Git per monitorare le modifiche al codice e alle configurazioni.
- Processo di build: utilizza un servizio che contribuisce a proteggere le tue build, come Cloud Build, e assicurati che il processo di compilazione sia basato su script o automatizzato.
- Generazione della provenienza: genera metadati di provenienza che acquisiscono dettagli su come sono stati creati gli artefatti, inclusi il processo di compilazione, il codice sorgente e le dipendenze. Per i dettagli, consulta Monitora i metadati e Monitora esecuzioni e artefatti.
- Firma degli artefatti: firma gli artefatti per verificarne l'autenticità e l'integrità.
- Gestione delle vulnerabilità: analizza regolarmente gli artefatti e le dipendenze per rilevare eventuali vulnerabilità. Utilizza strumenti come Artifact Analysis.
- Sicurezza del deployment: implementa pratiche di deployment che contribuiscono a proteggere i tuoi sistemi, come quelle descritte in questo documento.
Miglioramento continuo: monitora e migliora l'implementazione di SLSA per affrontare nuove minacce e vulnerabilità e punta a livelli SLSA più elevati.
Utilizza immagini container predefinite convalidate
Per evitare un single point of failure per le fasi di MLOps, isola le attività che richiedono una gestione delle dipendenze diversa in container diversi. Ad esempio, utilizza container separati per le attività di feature engineering, addestramento o ottimizzazione e inferenza. Questo approccio offre inoltre agli ML engineer la flessibilità di controllare e personalizzare il proprio ambiente.
Per promuovere la coerenza di MLOps nella tua organizzazione, utilizza container predefiniti. Mantieni un repository centrale di immagini della piattaforma di base verificate e attendibili con le seguenti best practice:
- Mantieni un team della piattaforma centralizzato nella tua organizzazione che crea e gestisce container di base standardizzati.
- Estendi le immagini container predefinite fornite da Agent Platform specificamente per l'AI e il ML. Gestisci le immagini container in un repository centrale all'interno della tua organizzazione.
Agent Platform fornisce svariati container predefiniti per l'addestramento e l'inferenza e consente anche di utilizzare container personalizzati. Per i modelli più piccoli, puoi ridurre la latenza per l'inferenza se carichi i modelli nei container.
Per migliorare la sicurezza della gestione dei container, considera i seguenti suggerimenti:
- Utilizza Artifact Registry per creare, archiviare e gestire repository di immagini container con formati diversi. Artifact Registry gestisce controllo dell'accesso con IAM e dispone di funzionalità integrate di osservabilità e valutazione delle vulnerabilità. Artifact Registry ti consente di attivare le funzionalità di sicurezza dei container, analizzare le immagini container ed esaminare le vulnerabilità.
- Esegui i passaggi di integrazione continua e crea immagini container con Cloud Build. In questa fase possono essere evidenziati problemi di dipendenza. Se vuoi eseguire il deployment solo delle immagini create da Cloud Build, puoi utilizzare Autorizzazione binaria. Per evitare attacchi alla catena di fornitura, esegui il deployment delle immagini create da Cloud Build in Artifact Registry. Integra strumenti di test automatici come SonarQube, PyLint o OWASP ZAP.
- Utilizza una piattaforma container come GKE o Cloud Run, ottimizzata per GPU o Cloud TPU per i workload di AI e ML. Valuta le opzioni di analisi delle vulnerabilità per i container nei cluster GKE.
Prendi in considerazione Confidential Computing per le GPU
Per proteggere i dati in uso, puoi utilizzare Confidential Computing. Le misure di sicurezza convenzionali proteggono i dati at-rest e in transito, ma Confidential Computing cripta i dati durante l'elaborazione. Quando utilizzi Confidential Computing per le GPU, contribuisci a proteggere i dati di addestramento sensibili e i parametri del modello da accessi non autorizzati. Puoi anche contribuire a impedire l'accesso non autorizzato da parte di utenti cloud con privilegi o potenziali utenti malintenzionati che potrebbero ottenere l'accesso all'infrastruttura sottostante.
Per determinare se hai bisogno di Confidential Computing per le GPU, considera la sensibilità dei dati, i requisiti normativi e i potenziali rischi.
Se configuri Confidential Computing, prendi in considerazione le seguenti opzioni:
- Per i workload di AI per finalità generali e ML, utilizza istanze Confidential VM con GPU NVIDIA T4. Queste istanze VM offrono la crittografia basata su hardware dei dati in uso.
- Per i workload containerizzati, utilizza i nodi Confidential Google Kubernetes Engine. Questi nodi forniscono un ambiente sicuro e isolato per i tuoi pod.
- Per assicurarti che il tuo workload sia in esecuzione in un enclave autentico e sicuro, verifica i report di attestazione forniti da Confidential VM.
- Per monitorare le prestazioni, l'utilizzo delle risorse e gli eventi di sicurezza, monitora le risorse di Confidential Computing e i nodi Confidential GKE utilizzando Monitoring e Logging.
Verifica e proteggi gli input
Considera tutti gli input dei tuoi sistemi di AI come non attendibili, indipendentemente dal fatto che provengano da utenti finali o da altri sistemi automatici. Per contribuire a proteggere i tuoi sistemi di AI e garantire che funzionino come previsto, devi rilevare e sanificare tempestivamente i potenziali vettori d'attacco.
Per verificare e proteggere gli input, tieni presenti i seguenti consigli.
Implementare pratiche che contribuiscono a proteggere i sistemi di AI generativa
Tratta i prompt come un componente dell'applicazione fondamentale che ha la stessa importanza per la sicurezza del codice. Implementa una strategia di difesa in profondità che combina progettazione proattiva, screening automatico e gestione disciplinata del ciclo di vita.
Per proteggere i prompt dell'AI generativa, devi progettarli in modo che siano sicuri, esaminarli prima dell'uso e gestirli durante tutto il loro ciclo di vita.
Per migliorare la sicurezza della progettazione e dell'engineering dei prompt, prendi in considerazione le seguenti pratiche:
- Struttura i prompt per maggiore chiarezza: progetta e testa tutti i prompt utilizzando le funzionalità di gestione dei prompt di Agent Studio su Gemini Enterprise Agent Platform. I prompt devono avere una struttura chiara e non ambigua. Definisci un ruolo, includi esempi few-shot e fornisci istruzioni specifiche e limitate. Questi metodi riducono il rischio che il modello possa interpretare erroneamente l'input di un utente in modo da creare una scappatoia di sicurezza.
Testa la solidità e il grounding degli input: testa in modo proattivo tutti i tuoi sistemi con input imprevisti, non corretti e dannosi per evitare arresti anomali o output non sicuri. Utilizza i test del red team per simulare attacchi reali. Automatizza i test di robustezza come passaggio standard nelle pipeline di Agent Platform. Puoi utilizzare le seguenti tecniche di test:
- Fuzz testing.
- Esegui test direttamente su PII, input sensibili e SQL injection.
- Scansiona gli input multimodali che possono contenere malware o violare le policy relative ai prompt.
Implementa una difesa a più livelli: utilizza più difese e non fare mai affidamento su un'unica misura difensiva. Ad esempio, per un'applicazione basata sulla Retrieval Augmented Generation (RAG), utilizza un LLM separato per classificare l'intento dell'utente in entrata e verificare la presenza di pattern dannosi. Quindi, l'LLM può passare la richiesta all'LLM principale più potente che genera la risposta finale.
Sanifica e convalida gli input: prima di incorporare input esterni o forniti dagli utenti in un prompt, filtra e convalida tutti gli input nel codice dell'applicazione. Questa convalida è importante per aiutarti a prevenire la prompt injection indiretta.
Per lo screening automatico di prompt e risposte, prendi in considerazione le seguenti pratiche:
- Utilizza servizi di sicurezza completi: implementa un servizio di sicurezza dedicato e indipendente dal modello come Model Armor come livello di protezione obbligatorio per i tuoi LLM. Model Armor esamina prompt e risposte per rilevare minacce come prompt injection, tentativi di jailbreak e contenuti dannosi. Per assicurarti che i tuoi modelli non divulghino dati di addestramento sensibili o proprietà intellettuale nelle loro risposte, utilizza l'integrazione di Sensitive Data Protection con Model Armor. Per maggiori dettagli, consulta Filtri di Model Armor.
- Monitora e registra le interazioni: conserva log dettagliati di tutti i prompt e le risposte per gli endpoint del modello. Utilizza Logging per controllare queste interazioni, identificare i pattern di uso improprio e rilevare i vettori d'attacco che potrebbero emergere contro i modelli di cui hai eseguito il deployment.
Per contribuire a proteggere la gestione del ciclo di vita dei prompt, prendi in considerazione le seguenti pratiche:
- Implementa il controllo delle versioni per i prompt: tratta tutti i prompt di produzione come codice dell'applicazione. Utilizza un sistema di controllo della versione come Git per creare una cronologia completa delle modifiche, applicare standard di collaborazione e consentire i rollback alle versioni precedenti. Questa pratica MLOps fondamentale può aiutarti a mantenere sistemi di AI stabili e sicuri.
- Centralizza la gestione dei prompt: utilizza un repository centrale per archiviare, gestire ed eseguire il deployment di tutti i prompt con controllo delle versioni. Questa strategia garantisce la coerenza tra gli ambienti e consente aggiornamenti di runtime senza la necessità di rifare il deployment dell'intera applicazione.
- Esegui controlli regolari e test del red team: testa continuamente le difese del tuo sistema contro le vulnerabilità note, come quelle elencate nella OWASP Top 10 per le applicazioni LLM. In qualità di AI engineer, devi essere proattivo e testare la tua applicazione con il red teaming per scoprire e correggere i punti deboli prima che un utente malintenzionato possa sfruttarli.
Impedisci query dannose ai tuoi sistemi di AI
Oltre all'autenticazione e all'autorizzazione, di cui abbiamo parlato in precedenza in questo documento, puoi adottare ulteriori misure per proteggere i tuoi sistemi di AI da input dannosi. Devi preparare i tuoi sistemi di AI per scenari post-autenticazione in cui i soggetti malintenzionati bypassano i protocolli di autenticazione e autorizzazione e poi tentano di attaccare il sistema internamente.
Per implementare una strategia completa che possa contribuire a proteggere il tuo sistema dagli attacchi post-autenticazione, applica i seguenti requisiti:
Proteggi i livelli di rete e applicazione: stabilisci una difesa a più livelli per tutti i tuoi asset AI.
- Per creare un perimetro di sicurezza che impedisca l'esfiltrazione di dati dei modelli da Model Registry o di dati sensibili da BigQuery, utilizza i Controlli di servizio VPC. Utilizza sempre la modalità dry run per convalidare l'impatto di un perimetro prima di applicarlo.
- Per proteggere gli strumenti basati sul web come i blocchi note, utilizza IAP.
- Per proteggere tutti gli endpoint di inferenza, utilizza Apigee per la sicurezza e la governance di livello enterprise. Puoi anche utilizzare API Gateway per un'autenticazione semplice.
Fai attenzione alle anomalie nei pattern di query: ad esempio, un utente malintenzionato che sonda un sistema alla ricerca di vulnerabilità potrebbe inviare migliaia di query sequenziali leggermente diverse. Segnala pattern di query anomali che non riflettono il normale comportamento degli utenti.
Monitora il volume delle richieste: un picco improvviso nel volume delle query indica chiaramente un attacco denial of service (DoS) o un attacco di furto del modello, che è un tentativo di reverse engineering del modello. Utilizza la limitazione di frequenza e la limitazione per controllare il volume delle richieste provenienti da un singolo indirizzo IP o utente.
Monitora e imposta avvisi per anomalie geografiche e temporali: stabilisci una base di riferimento per i normali pattern di accesso. Genera avvisi per attività improvvise da posizioni geografiche insolite o in orari insoliti. Ad esempio, un picco massiccio di accessi da un nuovo paese alle 3:00.
Monitora, valuta e preparati a rispondere agli output
I sistemi di AI offrono valore perché producono output che migliorano, ottimizzano o automatizzano il processo decisionale umano. Per mantenere l'integrità e l'affidabilità dei tuoi sistemi e delle tue applicazioni di AI, assicurati che gli output siano sicuri e rientrino nei parametri previsti. È inoltre necessario un piano per rispondere agli incidenti.
Per mantenere i tuoi output, tieni presenti i seguenti consigli.
Valuta le prestazioni del modello con metriche e misure di sicurezza
Per assicurarti che i tuoi modelli di AI soddisfino i benchmark di prestazioni, i requisiti di sicurezza e gli standard di equità e conformità, valuta attentamente i modelli. Esegui le valutazioni prima del deployment, quindi continua a valutare regolarmente i modelli in produzione. Per ridurre al minimo i rischi e creare sistemi di AI affidabili, implementa una strategia di valutazione completa che combini le metriche sul rendimento con valutazioni specifiche della sicurezza dell'AI.
Per valutare la robustezza del modello e la security posture, tieni presente i seguenti suggerimenti:
Implementa la firma e la verifica dei modelli nella pipeline MLOps.
- Per i modelli containerizzati, utilizza Autorizzazione binaria per verificare le firme.
- Per i modelli di cui viene eseguito il deployment direttamente negli endpoint di Agent Platform, utilizza i controlli personalizzati negli script di deployment per la verifica.
- Per qualsiasi modello, utilizza Cloud Build per la firma del modello.
Valuta la resilienza del modello a input imprevisti o avversari.
- Per tutti i tuoi modelli, testa il modello per individuare eventuali danneggiamenti dei dati comuni e modifiche dei dati potenzialmente dannose. Per orchestrare questi test, puoi utilizzare l'addestramento gestito di Agent Platform o le pipeline di Agent Platform.
- Per i modelli critici per la sicurezza, esegui simulazioni di attacchi avversari per comprendere le potenziali vulnerabilità.
- Per i modelli di cui è stato eseguito il deployment nei container, utilizza Artifact Analysis in Artifact Registry per analizzare le immagini di base alla ricerca di vulnerabilità.
Utilizza Model Monitoring su Gemini Enterprise Agent Platform per rilevare deviazioni e disallineamenti per i modelli di cui è stato eseguito il deployment. Quindi, utilizza questi insight per i cicli di rivalutazione o riaddestramento.
Utilizza le valutazioni dei modelli di Agent Platform come componente della pipeline con Agent Platform Pipelines. Puoi eseguire il componente di valutazione del modello da solo o con altri componenti della pipeline. Confronta le versioni del modello con le metriche e i set di dati definiti. Registra i risultati della valutazione nei metadati ML di Agent Platform per la derivazione e il monitoraggio.
Utilizza o sviluppa il servizio di valutazione dell'AI generativa per valutare i modelli scelti o per implementare flussi di lavoro di valutazione umana personalizzati.
Per valutare l'equità, il bias, la spiegabilità e l'oggettività, tieni presente i seguenti consigli:
- Definisci misure di equità che corrispondano ai tuoi casi d'uso, quindi valuta i tuoi modelli per individuare potenziali bias in diverse sezioni di dati.
- Comprendere quali caratteristiche determinano le previsioni del modello per garantire che le caratteristiche e le previsioni risultanti siano in linea con le conoscenze del dominio e le linee guida etiche.
- Utilizza le tecniche di spiegabilità per ottenere le attribuzioni delle caratteristiche per i tuoi modelli.
- Utilizza il servizio di valutazione dell'AI generativa per calcolare le metriche. Durante la fase di verifica della fonte dei test, la metrica di grounding del servizio verifica l'oggettività rispetto al testo di origine fornito.
- Attiva il grounding per l'output del modello per facilitare un secondo livello di verifica delle fonti a livello di utente.
- Esamina i nostri principi dell'AI e adattali alle tue applicazioni di AI.
Monitora gli output dei modelli di AI e ML in produzione
Monitora continuamente i tuoi modelli di AI e ML e la loro infrastruttura di supporto in produzione. È importante identificare e diagnosticare tempestivamente i peggioramenti della qualità o delle prestazioni dell'output del modello, le vulnerabilità di sicurezza che emergono e le deviazioni dai requisiti di conformità. Questo monitoraggio ti aiuta a mantenere la sicurezza, l'affidabilità e l'attendibilità del sistema.
Per monitorare gli output del sistema di AI per rilevare anomalie, minacce e degrado della qualità, considera i seguenti suggerimenti:
- Utilizza Model Monitoring su Agent Platform per gli output del modello per monitorare variazioni impreviste nelle distribuzioni delle previsioni o picchi nelle previsioni del modello con bassa confidenza. Monitora attivamente gli output del modello di AI generativa per individuare contenuti generati non sicuri, distorti, fuori tema o dannosi. Puoi anche utilizzare Model Armor per esaminare tutti gli output del modello.
- Identifica pattern di errore specifici, acquisisci indicatori di qualità o rileva output dannosi o non conformi a livello di applicazione. Per trovare questi problemi, utilizza il monitoraggio personalizzato nelle dashboard di Monitoring e utilizza le metriche basate su log di Logging.
Per monitorare gli output per rilevare indicatori specifici della sicurezza e modifiche non autorizzate, considera i seguenti consigli:
- Identifica i tentativi di accesso non autorizzato ai modelli di AI, ai set di dati in Cloud Storage o BigQuery o ai componenti della pipeline MLOps. In particolare, identifica le modifiche impreviste o non autorizzate alle autorizzazioni IAM per le risorse AI. Per monitorare queste attività ed esaminarle alla ricerca di pattern sospetti, utilizza i log di controllo delle attività di amministrazione e i log di controllo dell'accesso ai dati in Cloud Audit Logs. Integra i risultati di Security Command Center, che può segnalare errori di configurazione della sicurezza e potenziali minacce pertinenti ai tuoi asset AI.
- Monitora gli output per volumi elevati di richieste o richieste provenienti da fonti sospette, che potrebbero indicare tentativi di reverse engineering dei modelli o di esfiltrazione dei dati. Puoi anche utilizzare Sensitive Data Protection per monitorare l'esfiltrazione di dati potenzialmente sensibili.
- Integra i log nelle tue operazioni di sicurezza. Utilizza Google Security Operations per rilevare, orchestrare e rispondere a qualsiasi cyber minaccia proveniente dai tuoi sistemi di AI.
Per monitorare l'integrità operativa e le prestazioni dell'infrastruttura che gestisce i tuoi modelli di AI, tieni conto dei seguenti consigli:
- Identifica i problemi operativi che possono influire sull'erogazione del servizio o sulle prestazioni del modello.
- Monitora gli endpoint di Agent Platform per latenza, tassi di errore e pattern di traffico.
- Monitora le pipeline MLOps per verificare lo stato di esecuzione e gli errori.
- Utilizza Monitoring, che fornisce metriche pronte all'uso. Puoi anche creare dashboard personalizzate per identificare problemi come interruzioni degli endpoint o errori delle pipeline.
Implementa procedure di avviso e risposta agli incidenti
Quando identifichi potenziali problemi di prestazioni, sicurezza o conformità, una risposta efficace è fondamentale. Per garantire notifiche tempestive ai team appropriati, implementa solidi meccanismi di avviso. Stabilisci e rendi operative procedure complete di risposta agli incidenti basate sull'AI per gestire, contenere e correggere questi problemi in modo efficiente.
Per stabilire meccanismi di avviso efficaci per i problemi di AI che identifichi, considera i seguenti suggerimenti:
- Configura avvisi utili per informare i team competenti, in base alle attività di monitoraggio della tua piattaforma. Ad esempio, configura gli avvisi in modo che vengano attivati quando Model Monitoring su Agent Platform rileva deviazioni, disallineamenti o anomalie di previsione significativi. In alternativa, configura gli avvisi in modo che vengano attivati quando Model Armor o le regole di monitoraggio personalizzate segnalano input dannosi o output non sicuri.
- Definisci canali di notifica chiari, che possono includere Slack, email o SMS tramite integrazioni Pub/Sub. Personalizza i canali di notifica per le gravità degli avvisi e i team responsabili.
Sviluppa e rendi operativo un piano di risposta agli incidenti basato sull'AI. Un piano di risposta agli incidenti strutturato è fondamentale per ridurre al minimo i potenziali impatti e garantire il ripristino. Personalizza questo piano per affrontare i rischi specifici dell'AI, come la manomissione dei modelli, le previsioni errate dovute alla deviazione, il prompt injection o gli output non sicuri dei modelli generativi. Per creare un piano efficace, includi le seguenti fasi chiave:
Preparazione: identifica gli asset e le loro vulnerabilità, sviluppa playbook e assicurati che i tuoi team dispongano dei privilegi appropriati. Questa fase include le seguenti attività:
- Identifica gli asset di AI critici, come modelli, set di dati e risorse specifiche di Agent Platform come endpoint o istanze di Feature Store.
- Identifica le potenziali modalità di errore o i vettori d'attacco degli asset.
Sviluppa playbook specifici per l'AI per gli incidenti che corrispondono al modello di minacce della tua organizzazione. Ad esempio, i playbook potrebbero includere quanto segue:
- Un rollback del modello che utilizza il controllo delle versioni in Model Registry.
- Una pipeline di riaddestramento di emergenza su Agent Platform Managed Training.
- L'isolamento di un'origine dati compromessa in BigQuery o Cloud Storage.
Utilizza IAM per assicurarti che i team di risposta dispongano dell'accesso con privilegio minimo necessario agli strumenti richiesti durante un incidente.
Identificazione e triage: utilizza gli avvisi configurati per rilevare e convalidare potenziali incidenti. Stabilisci criteri e soglie chiari per il modo in cui la tua organizzazione indaga o dichiara un incidente relativo all'AI. Per indagini dettagliate e la raccolta di prove, utilizza Logging per i log delle applicazioni e i log dei servizi e utilizza Cloud Audit Logs per le attività amministrative e i pattern di accesso ai dati. I team di sicurezza possono utilizzare Google SecOps per analisi più approfondite della telemetria della sicurezza.
Contenimento: isola i sistemi o i componenti di AI interessati per evitare ulteriori impatti o l'esfiltrazione di dati. Questa fase potrebbe includere le seguenti attività:
- Disattiva un endpoint Agent Platform problematico.
- Revocare autorizzazioni IAM specifiche.
- Aggiorna le regole firewall o le policy di Google Cloud Armor.
- Mettere in pausa una pipeline di Agent Platform che non funziona correttamente.
Eliminazione: identifica e rimuovi la causa principale dell'incidente. Questa fase potrebbe includere le seguenti attività:
- Applica una patch al codice vulnerabile in un container di modelli personalizzati.
- Rimuovere le backdoor dannose identificate da un modello.
- Sanifica i dati compromessi prima di avviare un job di riaddestramento sicuro su Agent Platform Managed Training.
- Aggiorna le configurazioni non sicure.
- Perfeziona la logica di convalida degli input per bloccare tecniche specifiche di prompt injection.
Ripristino e deployment sicuro: ripristina i sistemi di AI interessati in uno stato operativo noto, sicuro e funzionante. Questa fase potrebbe includere le seguenti attività:
- Esegui il deployment di una versione del modello precedentemente convalidata e attendibile da Model Registry.
- Assicurati di trovare e applicare tutte le patch di sicurezza per le vulnerabilità che potrebbero essere presenti nel tuo codice o nel tuo sistema.
- Reimposta le autorizzazioni IAM in base al principio del privilegio minimo.
Attività post-incidente e lezioni apprese: dopo aver risolto gli incidenti significativi relativi all'AI, conduci un'analisi approfondita post-incidente. Questa revisione coinvolge tutti i team pertinenti, come i team di AI e ML, MLOps, sicurezza e data science. Comprendere l'intero ciclo di vita dell'incidente. Utilizza questi insight per perfezionare la progettazione del sistema di AI, aggiornare i controlli di sicurezza, migliorare le configurazioni di monitoraggio e perfezionare il piano e i playbook di risposta agli incidenti di AI.
Integra la risposta agli incidenti di AI con i framework organizzativi più ampi, come la gestione degli incidenti IT e di sicurezza, per un'azione coordinata. Per allineare la risposta agli incidenti specifici dell'AI ai framework della tua organizzazione, tieni presente quanto segue:
- Escalation: definisci percorsi chiari per l'escalation di incidenti significativi legati all'AI al SOC centrale, all'IT, al team legale o alle unità aziendali pertinenti.
- Comunicazione: utilizza i canali organizzativi stabiliti per tutte le segnalazioni di un problema e gli aggiornamenti sugli incidenti interni ed esterni.
- Strumenti e processi: utilizza i sistemi di gestione degli incidenti e di ticketing aziendali esistenti per gli incidenti legati all'AI per garantire un monitoraggio e una visibilità coerenti.
- Collaborazione: predefinisci i protocolli di collaborazione tra i team di AI e ML, MLOps, data science, sicurezza, legale e conformità per risposte efficaci agli incidenti di AI.
Collaboratori
Autori:
- Kamilla Kurta | GenAI/ML Specialist Customer Engineer
- Vidhi Jain | Cloud Engineer, Analytics and AI
- Mohamed Fawzi | Benelux Security and Compliance Lead
- Filipe Gracio, PhD | Customer Engineer, AI/ML Specialist
Altri collaboratori:
- Lauren Anthony | Customer Engineer, Security Specialist
- Daniel Lees | Cloud Security Architect
- John Bacon | Partner Solutions Architect
- Kumar Dhanagopal | Cross-Product Solution Developer
- Marwan Al Shawi | Partner Customer Engineer
- Mónica Carranza | Senior Generative AI Threat Analyst
- Tarun Sharma | Principal Architect
- Wade Holmes | Global Solutions Director