Auf dieser Seite wird erläutert, wie eine Compute Engine-Instanz mit Identity-Aware Proxy (IAP) gesichert wird.
Informationen zum Schutz von Ressourcen, die nicht in Google Cloud gespeichert sind, finden Sie unter Lokale Anwendungen und Ressourcen sichern.
Hinweise
Zum Aktivieren von IAP für Compute Engine benötigen Sie Folgendes:
- Ein Google Cloud Console-Projekt mit aktivierter Abrechnung.
- Eine Gruppe von einer oder mehreren Compute Engine-Instanzen, die von einem Load-Balancer bedient werden.
- Einen Domainnamen, der auf die Adresse des Load-Balancer registriert ist.
- Anwendungscode, der überprüft, ob alle Anfragen eine Identität haben.
- Weitere Informationen dazu finden Sie unter Identität des Nutzers abrufen.
Wenn Sie Ihre Compute Engine-Instanz noch nicht eingerichtet haben, lesen Sie die vollständige Schritt-für-Schritt-Anleitung unter IAP für Compute Engine einrichten.
IAP verwendet zum Authentifizieren von Nutzern einen von Google verwalteten OAuth-Client. Nur Nutzer innerhalb der Organisation können auf die IAP-fähige Anwendung zugreifen. Wenn Sie den Zugriff für Nutzer außerhalb Ihrer Organisation zulassen möchten, finden Sie weitere Informationen unter IAP für externe Anwendungen aktivieren.
IAP aktivieren
Console
Der von Google verwaltete OAuth-Client ist nicht verfügbar, wenn IAP über die Google Cloud Console aktiviert wird.
Wenn Sie den OAuth-Zustimmungsbildschirm Ihres Projekts nicht konfiguriert haben, dazu aufgefordert werden. Informationen zum Konfigurieren des OAuth-Zustimmungsbildschirms finden Sie unter OAuth-Zustimmungsbildschirm einrichten
IAP-Zugriff einrichten
-
Rufen Sie die Seite Identity-Aware Proxy auf.
Zur Seite "Identity-Aware Proxy" - Wählen Sie das Projekt aus, das Sie mit IAP sichern möchten.
-
Klicken Sie das Kästchen neben der Ressource an, für die Sie Zugriff gewähren möchten.
Wenn Sie eine Ressource nicht sehen, prüfen Sie, ob sie erstellt wurde und der BackendConfig Compute Engine-Ingress-Controller synchronisiert ist.
Führen Sie den folgenden gcloud-Befehl aus, um zu prüfen, ob der Backend-Dienst verfügbar ist:
gcloud compute backend-services list
- Klicken Sie in der rechten Seitenleiste auf Hauptkonto hinzufügen.
-
Fügen Sie im daraufhin angezeigten Dialogfeld Hauptkonten hinzufügen die E-Mail-Adressen von Nutzergruppen oder einzelnen Nutzern hinzu, denen Sie für das Projekt die Rolle Nutzer von IAP-gesicherten Web-Apps zuweisen möchten.
Die folgenden Arten von Hauptkonten können diese Rolle haben:
- Google-Konto: nutzer@gmail.com
- Google Group: admins@googlegroups.com
- Dienstkonto: server@beispiel.gserviceaccount.com
- Google Workspace-Domain: beispiel.de
Fügen Sie unbedingt ein Google-Konto hinzu, auf das Sie zugreifen können.
- Wählen Sie in der Drop-down-Liste Rollen den Eintrag Cloud IAP > Nutzer von IAP-gesicherten Web-Apps aus.
- Klicken Sie auf Speichern.
IAP aktivieren
-
Gehen Sie auf der Seite Identity-Aware Proxy unter ANWENDUNGEN so vor:
Ermitteln Sie den Load-Balancer, der die instance group begrenzte Funktion bedient.
auf die Sie zugreifen können.
So aktivieren Sie IAP:- Mindestens ein Protokoll im Load-Balancer-Front-End Konfiguration muss HTTPS sein. Weitere Informationen zum Einrichten eines Load Balancers
-
Sie benötigen die Berechtigungen
compute.backendServices.update
,clientauthconfig.clients.create
undclientauthconfig.clients.getWithSecret
. Diese Berechtigungen erhalten Sie über Rollen wie "Projektbearbeiter". Weitere Informationen finden Sie unter Zugriff auf durch IAP gesicherte Ressourcen verwalten.
- Klicken Sie im angezeigten Fenster IAP aktivieren auf Aktivieren, um zu bestätigen, dass die Ressource durch IAP gesichert werden soll. Nachdem Sie IAP aktiviert haben, sind für alle Verbindungen zu Ihrem Load-Balancer Anmeldedaten erforderlich. Zugriff erhalten nur Konten mit der Rolle Nutzer von IAP-gesicherten Web-Apps für das Projekt.
gcloud
Bevor Sie Ihr Projekt und IAP einrichten, benötigen Sie eine aktuelle Version des gcloud CLI verwenden können. Eine Anleitung zum Installieren der gcloud CLI Siehe gcloud CLI installieren.
-
Verwenden Sie zur Authentifizierung die Google Cloud CLI und führen Sie den folgenden Befehl aus.
gcloud auth login
- Folgen Sie der angezeigten URL, um sich anzumelden.
- Kopieren Sie, nachdem Sie sich angemeldet haben, den angezeigten Bestätigungscode und fügen Sie ihn in die Befehlszeile ein.
-
Führen Sie den folgenden Befehl aus, um das Projekt anzugeben, das die Ressource enthält, die Sie mit IAP schützen möchten.
gcloud config set project PROJECT_ID
-
Führen Sie zum Aktivieren von IAP entweder den Befehl mit globalem oder regionalem Umfang aus.
Globaler Geltungsbereich Regionaler Geltungsbereichgcloud compute backend-services update BACKEND_SERVICE_NAME --global --iap=enabled
gcloud compute backend-services update BACKEND_SERVICE_NAME --region REGION_NAME --iap=enabled
Nachdem Sie IAP aktiviert haben, können Sie mit der gcloud CLI Änderungen vornehmen,
IAP-Zugriffsrichtlinie mithilfe der IAM-Rolle
roles/iap.httpsResourceAccessor
Weitere Informationen zum Verwalten von Rollen und Berechtigungen.
API
Führen Sie den folgenden Befehl aus, um eine
settings.json
-Datei vorzubereiten.cat << EOF > settings.json { "iap": { "enabled":true } } EOF
Führen Sie den folgenden Befehl aus, um IAP zu aktivieren.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/REGION/backendServices/BACKEND_SERVICE_NAME"
Nachdem Sie IAP aktiviert haben, können Sie mit der Google Cloud CLI die IAP-Zugriffsrichtlinie mithilfe der IAM-Rolle roles/iap.httpsResourceAccessor
ändern. Weitere Informationen zum Verwalten von Rollen und Berechtigungen.
Nächste Schritte
- Umfassendere Kontextregeln durch Anwenden von Zugriffsebenen festlegen
- Mehr über Zugriffsanfragen durch Cloud-Audit-Logs aktivieren erfahren
- Weitere Informationen zu IAP