Proteggi un'app di AI generativa utilizzando IAP

Questo tutorial mostra come eseguire il deployment di un'app di IA generativa su Cloud Run e proteggerla con Identity-Aware Proxy (IAP). IAP fornisce un livello di autorizzazione centrale per le applicazioni HTTPS di cui è stato eseguito il deployment in Cloud Run. Puoi utilizzare IAP per adottare criteri di controllo dell'accesso a livello di applicazione o di organizzazione anziché utilizzare firewall a livello di rete.

Tieni presente che, sebbene sia possibile utilizzare anche l'autenticazione manuale o di terze parti, per proteggere un'app di cui è stato eseguito il deployment in Cloud Run, ti consigliamo di usare IAP per grandi volumi o traffico multiregionale, per evitare e interruzioni nella gestione dell'app.

In questo tutorial esegui il deployment di un'app che effettua chiamate all'API Gemini. L'app si basa sul framework Streamlit.

Prerequisiti

Questo tutorial presuppone che tu sia in grado di utilizzare i seguenti strumenti e framework:

  • Streamlit: Streamlit è un'app open source che consente di creare ed eseguire il deployment di applicazioni di dati. Trasforma gli script di dati in app web utilizzando Python.

  • Git: per questo tutorial, utilizzerai un repository Git per gestire il codice sorgente della tua app. Per ulteriori informazioni sull'uso di Git, consulta Documentazione Git.

Servizi Google Cloud

Devi avere una conoscenza di base dei seguenti servizi Google Cloud:

  • IA generativa su Vertex AI: fornisce l'accesso agli LLM di Google in modo da puoi testarli, ottimizzarli ed eseguirne il deployment per utilizzarli nelle tue applicazioni. Scopri di più sull'IA generativa su Vertex AI.

  • Cloud Run: una piattaforma di calcolo gestita che ti consente di eseguire il deployment e di eseguire immagini container. Creerai un servizio Cloud Run per eseguire il deployment della tua app. Scopri di più su Cloud Run.

  • Cloud Build: esegue le build su Google Cloud. Per questo tutorial, hai configurato un trigger Cloud Build automatico per creare ed eseguire il deployment dell'app su Cloud Run ogni volta che esegui il push dei commit nel repository Git. Scopri di più su Cloud Build.

  • Cloud Load Balancing: consente di distribuire il traffico su più istanze della tua app per ottenere la scalabilità. Creerai un bilanciatore del carico delle applicazioni per distribuire il traffico alle istanze di backend dell'app ospitate su Cloud Run. Cloud Load Balancing è anche un prerequisito per IAP. Scopri di più su Cloud Load Balancing.

  • Identity-Aware Proxy (IAP): utilizzi IAP per creare un livello di autorizzazione centrale per proteggere l'app. IAP controlli di autenticazione e autorizzazione che si estendono ai servizi Google Cloud collegati i servizi di machine learning. IAP supporta e si integra perfettamente con il bilanciamento del carico cloud, il che lo rende l'opzione di gestione della sicurezza più efficiente per questo tutorial.

    Per saperne di più su IAP, vedi Panoramica di Identity-Aware Proxy.

    Per capire come funziona IAP con Cloud Run, consulta la sezione Cloud Run di Come funziona IAP.

Nome di dominio valido

Inoltre, devi disporre di un nome di dominio valido per il provisioning necessario per configurare il bilanciatore del carico.

Pagine del tutorial

Questo tutorial contiene le seguenti pagine:

  1. Configura il progetto e il repository di origine.

  2. Crea un servizio Cloud Run.

  3. Crea un bilanciatore del carico.

  4. Configura Identity-Aware Proxy (IAP).

  5. Testa l'app protetta con acquisti in-app.

  6. Pulisci il progetto.

Ogni pagina presuppone che tu abbia già completato le istruzioni riportate nelle pagine precedenti del tutorial.