Panoramica sulla sicurezza delle app

ID regione

REGION_ID è un codice abbreviato assegnato da Google in base all'area geografica selezionata al momento della creazione dell'app. Il codice non corrisponde a un paese o a una provincia, anche se alcuni ID di area geografica potrebbero essere simili ai codici di paese e provincia di uso comune. Per le app create dopo febbraio 2020, REGION_ID.r è incluso negli URL di App Engine. Per le app esistenti create prima di questa data, l'ID area geografica è facoltativo nell'URL.

Scopri di più sugli ID dell'area geografica.

La sicurezza è una funzionalità fondamentale di Google Cloud, ma ci sono ancora misure da adottare per proteggere l'app App Engine e identificare le vulnerabilità.

Usa le seguenti funzionalità per garantire che l'app App Engine sia sicura. Per ulteriori informazioni sul modello di sicurezza di Google e sui passaggi disponibili che puoi adottare per proteggere i tuoi progetti Cloud, consulta Sicurezza di Google Cloud Platform.

Richieste HTTPS

Usa le richieste HTTPS per accedere alla tua app App Engine in sicurezza. A seconda della configurazione della tua app, puoi scegliere tra le seguenti opzioni:

Domini appspot.com
  • Utilizza il prefisso dell'URL https per inviare una richiesta HTTPS al servizio default del tuo progetto Cloud, ad esempio:
    https://PROJECT_ID.REGION_ID.r.appspot.com
  • Per scegliere come target risorse specifiche nell'app App Engine, utilizza la sintassi -dot- per separare le risorse che vuoi scegliere come target, ad esempio:
    https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com

  • Per convertire un URL HTTP in un URL HTTPS, sostituisci i punti tra ogni risorsa con -dot-, ad esempio:
    http://SERVICE_ID.PROJECT_ID.REGION_ID.r.appspot.com
    https://SERVICE_ID-dot-PROJECT_ID.REGION_ID.r.appspot.com

Per ulteriori informazioni sugli URL HTTPS e sulle risorse di targeting, consulta Modalità di routing delle richieste.

Domini personalizzati

Per inviare richieste HTTPS con il tuo dominio personalizzato, puoi utilizzare i certificati SSL gestiti di cui è stato eseguito il provisioning da App Engine. Per ulteriori informazioni, consulta Protezione dei domini personalizzati con SSL.

Controllo dell'accesso

In ciascun progetto Cloud, configura il controllo degli accessi per determinare chi può accedere ai servizi all'interno del progetto, incluso App Engine. Puoi assegnare diversi ruoli a diversi account per garantire che ogni account disponga solo delle autorizzazioni necessarie per supportare la tua app. Per maggiori dettagli, consulta la pagina Configurare il controllo degli accessi .

Firewall App Engine

Il firewall App Engine consente di controllare l'accesso all'app App Engine mediante una serie di regole che possono consentire o negare le richieste provenienti dagli intervalli IP specificati. Non ti viene addebitato alcun costo per traffico o larghezza di banda bloccati dal firewall. Crea un firewall per:

Consenti solo il traffico proveniente da una rete specifica
Assicurati che solo un determinato intervallo di indirizzi IP provenienti da reti specifiche possa accedere alla tua app. Ad esempio, crea regole per consentire solo l'intervallo di indirizzi IP interni alla rete privata aziendale durante la fase di test dell'app. Puoi quindi creare e modificare le regole firewall per controllare l'ambito di accesso durante l'intera procedura di rilascio, consentendo solo a determinate organizzazioni, all'interno o all'esterno dell'organizzazione, di accedere all'app mentre diventa disponibile al pubblico.
Consenti solo il traffico proveniente da un servizio specifico
Assicurati che tutto il traffico verso la tua app App Engine venga prima inviato al proxy tramite un servizio specifico. Ad esempio, se utilizzi un Web Application Firewall (WAF) di terze parti per le richieste proxy indirizzate alla tua applicazione, puoi creare regole firewall per rifiutare tutte le richieste ad eccezione di quelle inoltrate dal tuo WAF.
Bloccare indirizzi IP offensivi
Google Cloud dispone di molti meccanismi per prevenire attacchi, ma puoi utilizzare il firewall di App Engine per bloccare il traffico verso la tua app da indirizzi IP che presentano un intento dannoso o protegge la tua app da attacchi di tipo"denial of service"e simili. Puoi aggiungere indirizzi IP o subnet a una lista bloccata, in modo che le richieste instradate da tali indirizzi e subnet vengano rifiutate prima di raggiungere l'app App Engine.

Per maggiori dettagli sulla creazione di regole e la configurazione del firewall, consulta Controllo dell'accesso alle app con i firewall.

Controlli Ingress

Per impostazione predefinita, la tua app App Engine riceve tutte le richieste HTTP inviate al relativo URL AppSpot o a un dominio personalizzato configurato per la tua app.

Puoi utilizzare i controlli del traffico in entrata della rete per limitare il traffico in modo che la tua app riceva solo richieste HTTP da origini specifiche:

  • Tutte: imposta come predefinite. La tua app riceverà tutto il traffico, incluse le richieste dirette inviate da Internet.

  • Interno e Cloud Load Balancing: la tua app riceverà solo le richieste instradate tramite Cloud Load Balancing o inviate da reti VPC nello stesso progetto (inclusi connettori VPC di accesso serverless o VPC condivisi se li utilizzi). Tutte le altre richieste vengono rifiutate con un errore 403.

  • Solo a uso interno: la tua app riceverà solo le richieste inviate dalle reti VPC nello stesso progetto. Tutte le altre richieste vengono rifiutate con un errore 403.

Visualizza impostazioni traffico in entrata

Console

  1. Vai alla pagina dei servizi App Engine.

    Vai alla pagina Servizi

  2. Individua la colonna Ingress. Per ogni servizio, il valore in questa colonna mostra l'impostazione di traffico in entrata come Tutte, Interna + Bilanciamento del carico o Interna.

gcloud

Per visualizzare l'impostazione di traffico in entrata per un servizio utilizzando l'interfaccia a riga di comando gcloud:

gcloud app services describe SERVICE

Sostituisci SERVICE con il nome del servizio.

Ad esempio, per visualizzare le impostazioni del traffico in entrata e altre informazioni per l'esecuzione del servizio predefinito:

gcloud app services describe default

Modifica impostazioni traffico in entrata

Console

  1. Vai alla pagina dei servizi App Engine.

    Vai alla pagina Servizi

  2. Seleziona il servizio che vuoi modificare.

  3. Fai clic su Modifica impostazioni traffico in entrata.

  4. Seleziona l'impostazione di traffico in entrata dal menu e fai clic su Salva.

gcloud

Per aggiornare l'impostazione di traffico in entrata per un servizio utilizzando l'interfaccia a riga di comando gcloud:

gcloud app services update SERVICE --ingress=INGRESS

Sostituisci:

  • SERVICE: nome del servizio.
  • INGRESS: controllo in entrata da applicare. Uno tra all, internal-only o internal-and-cloud-load-balancing.

Ad esempio:

  • Per aggiornare il servizio predefinito di un'app di App Engine e accettare il traffico solo da reti Cloud Load Balancing e VPC nello stesso progetto:

    gcloud app services update default --ingress=internal-and-cloud-load-balancing
  • Per aggiornare un servizio denominato "internal-requests" per accettare solo il traffico proveniente da reti VPC nello stesso progetto:

    gcloud app services update internal-requests --ingress=internal-only

Security Scanner

Google Cloud Web Security Scanner rileva le vulnerabilità eseguendo la scansione dell'app App Engine, seguendo tutti i link nell'ambito degli URL iniziali e cercando di esercitare il maggior numero possibile di input utente e gestori di eventi.

Per poter utilizzare lo scanner di sicurezza, devi essere un proprietario del progetto Cloud. Per ulteriori informazioni sull'assegnazione dei ruoli, consulta la pagina relativa alla configurazione del controllo degli accessi.

Puoi eseguire scansioni di sicurezza da Google Cloud Console per identificare le vulnerabilità di sicurezza nell'app App Engine. Per maggiori dettagli sull'esecuzione di Security Scanner, consulta la guida rapida di Security Scanner.