Ressourcenzugriff auf bestimmte Domains beschränken

Zur Verbesserung der allgemeinen Sicherheit lehnt IAP standardmäßig den Zugriff auf Anfragen ab, die keine übereinstimmende Server Name Indication (SNI) haben. IAP prüft auch die SNI des Load-Balancer-Zertifikats. Dadurch kann IAP die URL-Weiterleitung auf schädliche Domains beschränken. Die Funktion für zulässige Domains in IAP bietet eine zusätzliche Sicherheitsebene für Ihre IAP-geschützten Ressourcen. Als Ressourceninhaber oder IAP-Administrator können Sie den Zugriff auf IAP-geschützte Ressourcen auf bestimmte Domains beschränken, indem Sie die Funktion für zulässige Domains konfigurieren.

Sie können zulässige Domains für IAP auch in den folgenden Szenarien konfigurieren:

  • Ihr Browser oder ein zwischengeschalteter Proxy erzwingt Connection Pooling: In diesem Fall erhalten Sie die HTTP-Antwort 429 und den Fehlercode 51. Um das Problem zu beheben, kann ein IAP-Administrator die Liste der zulässigen Domains aktualisieren und Ihren Hostnamen hinzufügen.
  • Der angegebene Hostname stimmt nicht mit dem SSL-Zertifikat auf dem Server überein:In diesem Fall erhalten Sie den Fehlercode 52. Um das Problem zu beheben, kann ein IAP-Administrator die Liste der zulässigen Domains aktualisieren und Ihren Hostnamen hinzufügen.

Zulässige Domains konfigurieren

Sie können zulässige Domains mit gcloud oder der API konfigurieren. Verwenden Sie dazu die folgenden Felder:

  • enable: Boolesch. Aktiviert oder deaktiviert die Funktion für zulässige Domains.
  • Domains: String. Die Liste der zulässigen Domains. Die Domains können Platzhalterpräfixe wie *.example.com. enthalten. Domainnamen dürfen keinen Platzhalter direkt in einem öffentlichen Suffix oder einer Top-Level-Domain enthalten. Beispiel: *.com, *.co.in.

Weitere Informationen finden Sie unter IapSettings.

So konfigurieren Sie zulässige Domains für IAP:

Console

  1. Zur Seite „IAP“.
    Zum Identity-Aware Proxy.
  2. Wählen Sie ein Projekt und dann die Ressource aus, für die Sie die Funktion für zulässige Domains aktivieren möchten.
  3. Öffnen Sie die Einstellungen für die Ressource. Wählen Sie unter Zulässige Domains die Option Zulässige Domains aktivieren aus.
  4. Geben Sie die Liste der zulässigen Domains an und klicken Sie auf Speichern.

gcloud

Im Folgenden finden Sie einige Beispielbefehle zum Angeben zulässiger Domains.

Weitere Informationen finden Sie unter gcloud iap settings set.

Führen Sie dazu diesen Befehl aus:

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

Dabei SETTING_FILEgilt:

accessSettings:
  allowed_domains_settings:
    enable: true
    domains: ["*.example.com", "*.example.net"]

Ersetzen Sie Folgendes:

  • FOLDER: Die Ordner-ID.
  • ORGANIZATION: Die Organisations-ID.
  • PROJECT: Die Projekt-ID.
  • RESOURCE_TYPE: Der IAP-Ressourcentyp. Muss app-engine, iap_web, compute, organization, folder, backend-services, forwarding-rule oder cloud-run sein.
  • SERVICE: Der Dienstname. Dieser Parameter ist optional, wenn resource-type den Wert compute oder app-engine hat.
  • VERSION: Der Versionsname. Dieser Parameter ist für compute nicht anwendbar und optional, wenn resource-type den Wert app-engine hat.

Sie müssen mindestens eines der folgenden Flags angeben, um den Bereich für die Einstellungen zu definieren:

  • --organization=ORGANIZATION
  • --folder=FOLDER
  • --project=PROJECT

API

So konfigurieren Sie zulässige Domains: Weitere Informationen zum Konfigurieren zulässiger Domains mit der API finden Sie unter IapSettings.

  1. Führen Sie den folgenden Befehl aus, um eine iap_settings.json-Datei vorzubereiten. Aktualisieren Sie die Werte nach Bedarf.
 {
     "access_settings":{
         "allowed_domains_settings":{
             "enable": true
             "domains": [
                 "*.example.com",
                 "*.exampe.net"
             ]
         }
     }
 }
  1. Rufen Sie den Ressourcennamen mit dem Befehl gcloud iap settings get ab. Kopieren Sie das Feld „name“ aus der Ausgabe. Sie benötigen den Namen im nächsten Schritt.
gcloud iap settings get --organization=ORGANIZATION --folder=FOLDER --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
  1. Ersetzen Sie RESOURCE_NAME im folgenden Befehl durch den Namen aus dem vorherigen Schritt. Die IapSettings werden aktualisiert.
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d @iap_settings.json \
"https://iap.googleapis.com/v1/RESOURCE_NAME:iapSettings?updateMask=iapSettings.accessSettings.allowedDomainsSettings.enable,iapSettings.accessSettings.allowedDomainsSettings.domains"

Fehlerbehebung

Zugriffsproblem bei zulässigen Domains
Wenn Sie den Fehlercode 53 erhalten, bitten Sie einen IAP-Administrator, Ihren Hostnamen der Liste der zulässigen Domains hinzuzufügen.