Proteggere un'app di IA generativa utilizzando gli acquisti in-app

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 messe in produzione su 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, anche se è 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 utilizzare l'IAP per volumi elevati o traffico multi-regione, per evitare interruzioni nel servizio dell'app.

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

Prerequisiti

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

  • Streamlit: Streamlit è un framework per app open source che consente di creare e implementare applicazioni di dati. Trasforma gli script di dati in app web utilizzando Python.

  • Git: per questo tutorial, utilizza un repository Git per gestire il codice sorgente della tua app. Per ulteriori informazioni sull'utilizzo di Git, consulta la documentazione di Git.

Google Cloud servizi

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

  • IA generativa su Vertex AI: fornisce accesso agli LLM di Google in modo da poterli testare, ottimizzare ed eseguire 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. Crea 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): utilizza IAP per creare un livello di autorizzazione centrale per proteggere l'app. IAP esegue controlli di autenticazione e autorizzazione che si estendono ai servizi Google Cloud� IAP supporta e si integra perfettamente con Cloud Load Balancing, il che lo rende l'opzione di gestione della sicurezza più efficiente per questo tutorial.

    Per saperne di più su IAP, consulta la 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 di un certificato, 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 lIAP;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.