Questa pagina illustra il deployment di un'applicazione dell'ambiente flessibile o dell'ambiente standard di App Engine e la sua protezione con Identity-Aware Proxy (IAP). La guida rapida include codice di esempio per un'app web standard di App Engine che verifica il nome di un utente che ha eseguito l'accesso.
Se prevedi di pubblicare risorse da una rete CDN (Content Delivery Network), consulta la guida alle best practice per informazioni importanti.
Per proteggere le risorse non su Google Cloud, vedi Sicurezza delle app e delle risorse on-premise.
Avviare Cloud Shell
-
Fai clic su Attiva Cloud Shell nella parte superiore della finestra della console.
Una sessione di Cloud Shell si apre all'interno di un nuovo frame nella parte inferiore della console e mostra un prompt della riga di comando. L'inizializzazione della sessione della shell può richiedere alcuni secondi.
-
Inserisci quanto segue in Cloud Shell per visualizzare gli ID progetto per i tuoi progetti:
gcloud projects list
-
Esegui il comando seguente per impostare il progetto predefinito, dove
YOUR-PROJECT-ID
è l'ID progetto che vuoi utilizzare per questa guida rapida:gcloud config set project YOUR-PROJECT-ID
Recupera il codice di esempio
Inserisci il comando seguente in Cloud Shell per ottenere l'applicazione di esempio:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
Passa alla directory che contiene il codice di esempio:
cd python-docs-samples/appengine/standard_python3/hello_world/
Implementazione dell'applicazione
-
Utilizza
gcloud
per eseguire il deployment dell'applicazione in App Engine:gcloud app deploy
-
target url:
viene visualizzato nel formatohttps://YOUR_PROJECT_ID.appspot.com
. Per accedere alla tua applicazione, vai all'URL nel browser web.
Attivazione di IAP
Selezione di un progetto
-
Vai alla
pagina
Identity-Aware Proxy.
Vai alla pagina Identity-Aware Proxy - Se non hai ancora un progetto attivo, ti verrà chiesto di selezionare il progetto che vuoi proteggere con IAP. Seleziona il progetto in cui hai eseguito il deployment dell'applicazione di esempio.
Configurare la schermata per il consenso OAuth
Se non hai configurato la schermata per il consenso OAuth del tuo progetto, ti verrà richiesto di farlo. Sono necessari un indirizzo email e un nome di prodotto per la schermata per il consenso OAuth.
-
Vai alla schermata di consenso OAuth.
Configurare la schermata per il consenso - In Email di assistenza, seleziona l'indirizzo email che vuoi visualizzare come contatto pubblico. L'indirizzo email deve appartenere all'account utente attualmente connesso o a un gruppo Google di cui fa parte l'utente che ha eseguito l'accesso.
- Inserisci il Nome applicazione che vuoi visualizzare.
- Aggiungi eventuali dettagli facoltativi.
- Fai clic su Salva.
Per modificare in seguito le informazioni sulla schermata di consenso OAuth, ad esempio il nome del prodotto o l'indirizzo email, ripeti i passaggi precedenti per configurare la schermata di consenso.
Configurazione dell'accesso IAP
- Vai alla pagina di Identity-Aware Proxy.
Vai alla pagina Identity-Aware Proxy - Scegli la risorsa che vuoi modificare selezionando la casella alla sua sinistra. Nel riquadro laterale a destra, fai clic su Aggiungi membro.
-
Nella finestra di dialogo Aggiungi membri, aggiungi gli indirizzi email dei gruppi o delle persone a cui vuoi concedere il ruolo Utente applicazione web con protezione IAP per il progetto.
I seguenti tipi di account possono essere membri:
- Account Google: user@gmail.com
- Gruppo Google: admins@googlegroups.com
- Account di servizio: server@example.gserviceaccount.com
- Dominio G Suite: example.com
Assicurati di aggiungere un Account Google a cui hai accesso.
Per rendere una risorsa accessibile pubblicamente (mentre le risorse di pari livello sono limitate), concedi il ruolo Utente applicazione web con protezione IAP a "allUsers" o "allAuthenticatedUsers". La differenza tra questi due è spiegata nella sezione Accesso pubblico.
- Quando hai finito di aggiungere i membri, fai clic su Aggiungi.
Attivazione di IAP
-
Nella pagina Identity-Aware Proxy, in Risorse HTTPS, trova l'applicazione App Engine di cui vuoi limitare l'accesso. La colonna Pubblicati mostra l'URL
dell'app. Per attivare IAP per l'app,
- Per abilitare IAP, devi disporre delle autorizzazioni
appengine.applications.update
,clientauthconfig.clients.create
eclientauthconfig.clients.getWithSecret
. Queste autorizzazioni sono concesse da ruoli, ad esempio il ruolo Editor di progetto. Per scoprire di più, vedi Gestire l'accesso alle risorse protette da IAP.
- Per abilitare IAP, devi disporre delle autorizzazioni
- Per confermare che vuoi proteggere IAP dall'applicazione, fai clic su Attiva nella finestra Attiva IAP che viene visualizzata. Dopo averlo attivato, IAP richiede le credenziali di accesso per tutte le connessioni alla tua applicazione.
Testare l'autenticazione utente
Accedi all'URL dell'app da un Account Google che hai aggiunto a IAP con il ruolo Utente applicazione web con protezione IAP, come descritto sopra. Dovresti avere accesso illimitato all'app.
Utilizza una finestra di navigazione in incognito in Chrome per accedere all'app e accedere quando richiesto. Se tenti di accedere all'app con un account non autorizzato con il ruolo Utente applicazione web con protezione IAP, verrà visualizzato un messaggio che indica che non hai accesso.
Passaggi successivi
- Imposta regole di contesto più avanzate applicando i livelli di accesso.
- Visualizza le richieste di accesso attivando Cloud Audit Logs.
- Scopri di più su IAP.
- Scopri come ottenere l'identità dell'utente e sviluppare la tua applicazione App Engine.