Limita l'accesso alle risorse a domini specifici

Per migliorare la sicurezza generale, IAP per impostazione predefinita nega l'accesso a richieste che non hanno l'indicazione del nome del server (SNI) corrispondente. Questo consente a IAP di limitare il reindirizzamento degli URL a domini dannosi. La funzionalità Domini consentiti IAP fornisce un ulteriore livello di sicurezza per le risorse protette da IAP. Come proprietario di una risorsa o amministratore di IAP, puoi limitare l'accesso alle risorse protette da IAP a domini specifici configurando la funzionalità Domini consentiti.

Puoi anche configurare i domini consentiti per IAP nei seguenti scenari:

  • Il browser o un proxy intermedio forza il pool di connessioni: in questo scenario, ricevi la risposta HTTP 429 e il codice di errore 51. Per risolvere il problema, un amministratore IAP può aggiornare l'elenco dei domini consentiti in modo da includere il nome host.
  • Il nome host fornito non corrisponde al certificato SSL sul server:in questo scenario, viene visualizzato il codice di errore 52. Per risolvere il problema, un amministratore IAP può aggiornare l'elenco dei domini consentiti in modo da includere il nome host.

Configura domini consentiti

Per configurare le impostazioni dei domini consentiti, puoi utilizzare gcloud o l'API. Per configurare i domini consentiti, utilizza i campi seguenti:

  • enable: booleano. Attiva o disattiva la funzionalità Domini consentiti.
  • Domains: stringa. L'elenco dei domini consentiti. I domini possono contenere prefissi con caratteri jolly, ad esempio *.abc.com. I nomi di dominio non possono contenere caratteri jolly direttamente su un suffisso pubblico o su un dominio di primo livello. Esempio: *.com, *.co.in.

Per ulteriori informazioni, vedi IapSettings.

Per configurare i domini consentiti per IAP, completa i seguenti passaggi:

gcloud

Puoi specificare i domini consentiti a livello di risorse e servizi a livello di organizzazione, progetto e cartella. Di seguito sono riportati alcuni comandi di esempio per specificare i domini consentiti.

Per saperne di più, vedi gcloud iap settings set.

Esegui questo comando:

gcloud iap settings set SETTING_FILE [--folder=FOLDER --organization=ORGANIZATION --project=/PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION

Per impostare i domini consentiti all'interno di un'organizzazione, esegui questo comando:

gcloud iap settings set SETTING_FILE --organization=ORGANIZATION

Per impostare i domini consentiti per le risorse all'interno di una cartella, esegui questo comando:

gcloud iap settings set SETTING_FILE --folder=FOLDER

Per impostare i domini consentiti per tutte le risorse del tipo web all'interno di un progetto, esegui il comando seguente:

gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=iap_web

Per impostare i domini consentiti per tutti i servizi di App Engine all'interno di un progetto, esegui il comando seguente:

gcloud iap settings set SETTING_FILE --project=PROJECT --resource-type=app-engine --service=SERVICE

Dove si trova SETTING_FILE:

{
  "access_settings": {
      "allowed_domains_settings": {
          "enable": true,
          "domains": [
              "*.abc.com",
              "*.xyz.co.in"
          ]
      }
  }
}

Sostituisci quanto segue:

  • FOLDER: l'ID cartella.
  • ORGANIZATION: l'ID organizzazione.
  • PROJECT: l'ID progetto.
  • RESOURCE_TYPE: il tipo di risorsa IAP. Deve essere app-engine, iap_web, compute, organization o folder.
  • SERVICE: il nome del servizio. Facoltativo quando resource-type è compute o app-engine.
  • VERSION: nome della versione. Questo non è applicabile per compute ed è facoltativo quando resource-type è app-engine.

API

Per configurare i domini consentiti, completa i seguenti passaggi. Per saperne di più sull'utilizzo dell'API per configurare i domini consentiti, vedi IapSettings.

  1. Crea un file JSON con le impostazioni dei domini consentite con maschera dei campi. JSON di esempio SETTING_FILE:

    {
       "iap_settings":{
          "value":{
             "access_settings":{
                "allowed_domains_settings":{
                   "enable":{
                      "value":"True"
                   },
                   "domains":{
                      "value":[
                         "*.abc.com",
                         "*.xyz.co.in"
                      ]
                   }
                }
             }
          }
       },
       "update_mask":{
          "value":"iap_settings.access_settings.allowed_domains_settings"
       }
    }
    
  2. Esegui il comando seguente per utilizzare l'API UpdateIAPSettings per aggiungere le impostazioni dei domini consentiti.

    curl -i -H "Content-Type:application/json" 
    -H "Authentication: Bearer $(gcloud auth print-access-token)" IAP_URL
    -d SETTINGS_FILE.JSON

Per configurare le impostazioni relative ai domini consentiti per tutte le risorse di un'organizzazione, utilizza il seguente URL: https://iap.googleapis.com/v1/organization/ORGANIZATION_ID:iapsettings

Per configurare le impostazioni relative ai domini consentiti per tutte le risorse all'interno di una cartella, utilizza il seguente URL: https://iap.googleapis.com/v1/folder/FOLDER_ID:iapsettings

Per configurare le impostazioni relative ai domini consentiti per tutte le risorse del tipo web all'interno di un progetto, utilizza il seguente URL: https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web:iapsettings

Per configurare le impostazioni relative ai domini consentiti per tutte le risorse App Engine all'interno di un progetto, utilizza il seguente URL: https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/appengine-APP_ID:iapsettings

Per configurare le impostazioni dei domini consentite per una versione del servizio App Engine all'interno di un progetto, utilizza il seguente URL: https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/appengine-APP_ID/services/APP_SERVICE_ID/versions/VERSION_ID:iapsettings

Per configurare le impostazioni dei domini consentite per tutte le risorse Compute Engine all'interno di un progetto, utilizza il seguente URL: https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/compute:iapsettings

Per configurare le impostazioni dei domini consentite per una risorsa Compute Engine all'interno di un progetto, utilizza il seguente URL: https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_web/compute/services/BACKEND_SERVICE_ID:iapsettings

Risolvere i problemi

Problema di accesso ai domini consentiti
Se ricevi il codice di errore 53, chiedi a un amministratore di IAP di aggiungere il tuo nome host all'elenco dei domini consentiti.