In diesem Leitfaden wird beschrieben, wie Sie von OAuth 2.0-Clients, die mit der IAP OAuth Admin API (Identity-Aware Proxy) erstellt wurden, zu den von IAP automatisch bereitgestellten Google-verwalteten OAuth 2.0-Clients migrieren.
Was ändert sich?
Wir stellen die IAP OAuth Admin API ein. Sie umfasst die folgenden APIs für die manuelle Verwaltung von OAuth-Clients und ‑Marken:
Anstatt OAuth 2.0-Clients manuell zu verwalten, werden sie jetzt bei Bedarf automatisch von IAP erstellt und verwaltet. Diese Änderung vereinfacht die Clientverwaltung, reduziert manuelle Fehler und optimiert Ihre Bereitstellungsprozesse.
Was sich nicht ändert
Diese Einstellung betrifft nicht OAuth-Clients, die Sie manuell mit der Compute Engine API, der App Engine API oder der Google Cloud -Konsole konfigurieren.
Sie können weiterhin neue OAuth-Marken- und Clientkonfigurationen erstellen und über die Google Cloud Konsole verwalten. Bestehende Konfigurationen werden weiterhin vollständig unterstützt.
Wenn Sie die IAP OAuth Admin API nicht verwenden, hat diese Änderung keine Auswirkungen auf Sie.
Detaillierte Beschreibung
Ab dem 22. Januar 2025 ist die IAP OAuth 2.0 Admin API, die zum Erstellen eines IAP OAuth 2.0-Clients verwendet wird, eingestellt. Die IAP OAuth 2.0 Admin API ist nicht mehr erforderlich, da Sie keine OAuth-Clients mehr konfigurieren müssen. IAP verwendet jetzt standardmäßig oder wenn kein OAuth 2.0-Client explizit konfiguriert ist einen von Google verwalteten OAuth-Client für den Browserzugriff. Der von Google verwaltete OAuth 2.0-Client schränkt den Zugriff auf IAP-fähige Anwendungen auf Nutzer innerhalb derselben Organisation ein, wenn sie über einen Browser auf diese Anwendungen zugreifen.
Da die IAP OAuth 2.0 Admin API eingestellt wird, können Sie keine neuen OAuth-Clients mehr erstellen oder verwalten. OAuth-Clients, die vor dieser Einstellung erstellt wurden, werden nicht ungültig. Sie können weiterhin zuvor erstellte OAuth-Clients verwenden und diese über die Google Cloud -Konsole verwalten.
Wenn Sie Anwendungen mit OAuth-Clients konfiguriert haben, die mit der IAP 2.0 Admin API oder auf andere Weise erstellt wurden, funktionieren diese Anwendungen weiterhin. An den Anwendungen sind keine Änderungen erforderlich. Wenn Sie jedoch Automatisierung eingerichtet haben, um beim Bereitstellen von Anwendungen neue Clients zu erstellen oder Clientschlüssel für vorhandene Clients abzurufen, müssen Sie Ihre Automatisierungsskripts aktualisieren, um die Abhängigkeit von der IAP OAuth 2.0 Admin API zu entfernen.
Wenn Sie den von Google verwalteten OAuth 2.0-Client verwenden möchten, folgen Sie der Anleitung unter Programmgesteuerter Zugriff, um den programmgesteuerten Zugriff für diese Anwendungen zu konfigurieren.
Wenn Sie eine Anforderung haben, die vom von Google verwalteten OAuth 2.0-Client nicht erfüllt wird, können Sie einen einzelnen OAuth-Client für mehrere IAP-Anwendungen freigeben. So müssen Sie nicht für jede neue Anwendung einen Client manuell erstellen.
Erforderliche Aktionen
Automatisierungsskripts aktualisieren
Wenn Sie Terraform oder andere Tools zur Automatisierung der IAP-Konfiguration verwenden und die IAP OAuth 2.0 Admin API nutzen, müssen Sie die Automatisierungsskripts aktualisieren, damit ein vorab erstellter Client verwendet wird oder der von Google verwaltete OAuth-Client mit IAP genutzt wird.
Programmgesteuerten Zugriff für Anwendungen mit von Google verwalteten OAuth 2.0-Clients konfigurieren
Wenn Sie bereits einige Anwendungen haben, die durch IAP geschützt sind, und Sie planen, sie auf die Verwendung des von Google verwalteten OAuth 2.0-Clients umzustellen, können Sie den programmatischen Zugriff für diese Anwendungen konfigurieren, indem Sie OAuth 2.0-Clients auf die Zulassungsliste setzen.
IAP-aktivierte Ressourcen migrieren
Wenn Sie Ihre Ressourcen migrieren möchten, um den von Google verwalteten OAuth 2.0-Client zu verwenden, folgen Sie der Anleitung für den jeweiligen Ressourcentyp, z. B. eine Compute Engine-Ressource.
IAP-fähige App Engine-Ressourcen migrieren
Führen Sie die Schritte in diesem Abschnitt aus, um App Engine-Ressourcen zu migrieren, für die IAP aktiviert und ein OAuth 2.0-Client konfiguriert ist.
gcloud
Bevor Sie mit den Schritten fortfahren, müssen Sie prüfen, ob Sie eine aktuelle Version der gcloud CLI haben. Eine Anleitung zur Installation der gcloud CLI finden Sie unter gcloud CLI installieren.
Authentifizieren Sie sich mit der Google Cloud CLI.
gcloud auth login
Klicken Sie auf die angezeigte URL und melden Sie sich an.
Kopieren Sie nach der Anmeldung 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 Anwendungen enthält, die Sie weiterhin mit IAP schützen möchten.
gcloud config set project PROJECT_ID
Führen Sie den folgenden Befehl aus, um die konfigurierte OAuth 2.0-Client-ID abzurufen.
gcloud app describe --format="value(iap.oauth2ClientId)"
Speichern Sie die Client-ID aus dem vorherigen Befehl, wenn Sie programmatischen Zugriff zulassen möchten.
Wenn Sie den OAuth 2.0-Client für den programmatischen Zugriff auf die Zulassungsliste setzen möchten, führen Sie einen Lese-, Aktualisierungs- und Schreibvorgang für die IAP-Einstellungen-API aus.
gcloud iap settings get --resource-type=app-engine --project=$PROJECT > settings.yaml
Aktualisieren Sie die Datei „settings.yaml“ und fügen Sie die zuvor abgerufene OAuth 2.0-Client-ID unter
programmaticClients
ein, wie im Beispiel gezeigt.accessSettings: oauthSettings: programmaticClients: - CLIENT_ID
Neue Einstellungen auf die App Engine-Anwendung anwenden
gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_ID
Führen Sie den folgenden Befehl aus, um Ihre Apps zu migrieren.
gcloud iap web enable --resource-type=app-engine
API
Führen Sie den folgenden Befehl aus, um die konfigurierte OAuth 2.0-Client-ID abzurufen.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://appengine.googleapis.com/v1/apps/PROJECT_ID?fields=iap"
Führen Sie den folgenden Befehl aus, um vorhandene IAP-Einstellungen in eine
settings.json
-Datei abzurufen.curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings" > settings.json
Aktualisieren Sie die Datei
settings.json
, um zuvor gespeicherte CLIENT_ID als programmatischen Client hinzuzufügen.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }
Führen Sie den folgenden Befehl aus, um die IAP-Einstellungen zu aktualisieren.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings"
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 Ihre Apps zu migrieren.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://appengine.googleapis.com/v1/apps/PROJECT_ID?updateMask=iap"
IAP-fähige Compute Engine-Ressourcen migrieren
Führen Sie die Schritte in diesem Abschnitt aus, um Compute Engine-Ressourcen zu migrieren, für die IAP aktiviert und ein OAuth 2.0-Client konfiguriert ist.
gcloud
Bevor Sie mit den Schritten fortfahren, müssen Sie prüfen, ob Sie eine aktuelle Version der gcloud CLI haben. Eine Anleitung zur Installation der gcloud CLI finden Sie unter gcloud CLI installieren.
Authentifizieren Sie sich mit der Google Cloud CLI.
gcloud auth login
Klicken Sie auf die angezeigte URL und melden Sie sich an.
Kopieren Sie nach der Anmeldung 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 Anwendungen enthält, die Sie weiterhin mit IAP schützen möchten.
gcloud config set project PROJECT_ID
Führen Sie den folgenden Befehl aus, um die konfigurierte OAuth 2.0-Client-ID abzurufen.
Globaler Bereich
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global \ --format="value(iap.oauth2ClientId)"
Regionaler Geltungsbereich
Speichern Sie die Client-ID aus dem vorherigen Befehl, wenn Sie programmatischen Zugriff zulassen möchten.gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME \ --format="value(iap.oauth2ClientId)"
Wenn Sie einen OAuth 2.0-Client für den programmatischen Zugriff auf die Zulassungsliste setzen möchten, führen Sie einen Lese-, Aktualisierungs- und Schreibvorgang für die IAP-Einstellungen-API aus.
Globaler Bereich
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME > settings.yaml
Regionaler Geltungsbereich
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yaml
Aktualisieren Sie die Datei „settings.yaml“ und fügen Sie die zuvor abgerufene OAuth 2.0-Client-ID unter
programmaticClients
ein, wie im Beispiel gezeigt.accessSettings: oauthSettings: programmaticClients: - CLIENT_ID
Neue Einstellungen auf die Compute Engine-Anwendung anwenden
Globaler Bereich
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME
Regionaler Geltungsbereich
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME
Führen Sie zum Migrieren Ihrer Anwendungen entweder den globalen oder den regionalen Befehl aus.
Globaler Bereich
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --global \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Regionaler Geltungsbereich
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --region REGION_NAME \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Führen Sie den folgenden Befehl mit globalem oder regionalem Bereich aus, um zu bestätigen, dass die OAuth-Client-ID nicht festgelegt ist. Prüfen Sie nach der Ausführung des Befehls die Ausgabe, um sicherzustellen, dass das Feld „OAuth-Client-ID“ leer ist.
Globaler Bereich
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global
Regionaler Geltungsbereich
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME
API
Führen Sie den folgenden Befehl aus, um die konfigurierte OAuth 2.0-Client-ID abzurufen.
Globaler Bereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Regionaler Geltungsbereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Führen Sie den folgenden Befehl aus, um vorhandene IAP-Einstellungen in eine
settings.json
-Datei abzurufen.Globaler Bereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Regionaler Geltungsbereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Aktualisieren Sie die Datei
settings.json
, um zuvor gespeicherte CLIENT_ID als programmatischen Client hinzuzufügen.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }
Führen Sie den folgenden Befehl aus, um die IAP-Einstellungen zu aktualisieren.
Globaler Bereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
Regionaler Geltungsbereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
Führen Sie den folgenden Befehl aus, um eine
settings.json
-Datei vorzubereiten.cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOF
Führen Sie den folgenden Befehl aus, um Ihre IAP-Ressourcen zu migrieren.
Globaler Bereich
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/global/backendServices/BACKEND_SERVICE_NAME"
Regionaler Geltungsbereich
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/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"Führen Sie den folgenden Befehl mit globalem oder regionalem Bereich aus, um zu bestätigen, dass die OAuth-Client-ID nicht festgelegt ist. Prüfen Sie nach der Ausführung des Befehls die Ausgabe, um sicherzustellen, dass das Feld „OAuth-Client-ID“ leer ist.
Globaler Bereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
Regionaler Geltungsbereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
Terraform
Wenn Sie vorhandene IAP-fähige Ressourcen migrieren, um einen von Google verwalteten OAuth-Client zu verwenden, müssen Sie die Felder oauth2_client_id
und oauth2_client_secret
explizit aufheben, indem Sie sie auf ein einzelnes Leerzeichen aktualisieren.
Beispiel:
resource "google_compute_backend_service" "default" {
name = "tf-test-backend-service-external"
protocol = "HTTP"
load_balancing_scheme = "EXTERNAL"
iap {
oauth2_client_id = " "
oauth2_client_secret = " "
}
}
Die Felder oauth2_client_id
und oauth2_client_secret
sind optional. Wenn Sie mit neuen IAP-fähigen Ressourcen arbeiten, können Sie sie ignorieren.
Weitere Informationen finden Sie in der Terraform-Dokumentation.
IAP-fähige Cloud Run-Ressourcen migrieren
Führen Sie die Schritte in diesem Abschnitt aus, um Cloud Run-Ressourcen zu migrieren, für die IAP aktiviert und ein OAuth 2.0-Client konfiguriert ist.
gcloud
Bevor Sie mit den Schritten fortfahren, müssen Sie prüfen, ob Sie eine aktuelle Version der gcloud CLI haben. Eine Anleitung zur Installation der gcloud CLI finden Sie unter gcloud CLI installieren.
Verwenden Sie die Google Cloud CLI und führen Sie den folgenden Befehl aus, um sich zu authentifizieren.
gcloud auth login
Klicken Sie auf die angezeigte URL und melden Sie sich an.
Kopieren Sie nach der Anmeldung 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 Anwendungen enthält, die Sie weiterhin mit IAP schützen möchten.
gcloud config set project PROJECT_ID
Führen Sie den folgenden Befehl aus, um die konfigurierte OAuth 2.0-Client-ID abzurufen.
Globaler Bereich
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global \ --format="value(iap.oauth2ClientId)"
Regionaler Geltungsbereich
Speichern Sie die Client-ID aus dem vorherigen Befehl, wenn Sie programmatischen Zugriff zulassen möchten.gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME \ --format="value(iap.oauth2ClientId)"
Wenn Sie einen OAuth 2.0-Client für den programmatischen Zugriff auf die Zulassungsliste setzen möchten, führen Sie einen Lese-, Aktualisierungs- und Schreibvorgang für die IAP-Einstellungen-API aus.
Globaler Bereich
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME > settings.yaml
Regionaler Geltungsbereich
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yaml
Aktualisieren Sie die Datei „settings.yaml“ und fügen Sie die zuvor abgerufene OAuth 2.0-Client-ID unter
programmaticClients
ein, wie im Beispiel gezeigt.accessSettings: oauthSettings: programmaticClients: - CLIENT_ID
Neue Einstellungen auf die Compute Engine-Anwendung anwenden
Globaler Bereich
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME
Regionaler Geltungsbereich
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME
Führen Sie zum Migrieren Ihrer Ressourcen entweder den globalen oder den regionalen Befehl aus.
Globaler Bereich
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --global \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Regionaler Geltungsbereich
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --region REGION_NAME \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Führen Sie den folgenden Befehl mit globalem oder regionalem Bereich aus, um zu bestätigen, dass die OAuth-Client-ID nicht festgelegt ist. Prüfen Sie nach der Ausführung des Befehls die Ausgabe, um sicherzustellen, dass das Feld „OAuth-Client-ID“ leer ist.
Globaler Bereich
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global
Regionaler Geltungsbereich
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME
API
Führen Sie den folgenden Befehl aus, um die konfigurierte OAuth 2.0-Client-ID abzurufen.
Globaler Bereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Regionaler Geltungsbereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Führen Sie den folgenden Befehl aus, um vorhandene IAP-Einstellungen in eine
settings.json
-Datei abzurufen.Globaler Bereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Regionaler Geltungsbereich
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Aktualisieren Sie die Datei
settings.json
, um zuvor gespeicherte CLIENT_ID als programmatischen Client hinzuzufügen.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }
Führen Sie den folgenden Befehl aus, um die IAP-Einstellungen zu aktualisieren.
Globaler Bereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
Regionaler Geltungsbereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
Führen Sie den folgenden Befehl aus, um eine
settings.json
-Datei vorzubereiten.cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOF
Führen Sie den folgenden Befehl aus, um Ihre Ressourcen zu migrieren.
Globaler Bereich
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/global/backendServices/BACKEND_SERVICE_NAME"
Regionaler Geltungsbereich
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/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"Führen Sie den folgenden Befehl mit globalem oder regionalem Bereich aus, um zu bestätigen, dass die OAuth-Client-ID nicht festgelegt ist. Prüfen Sie nach der Ausführung des Befehls die Ausgabe, um sicherzustellen, dass das Feld „OAuth-Client-ID“ leer ist.
Globaler Bereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
Regionaler Geltungsbereich
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
IAP-fähige Google Kubernetes Engine-Ressourcen migrieren
Fügen Sie der benutzerdefinierten Ressourcendefinition (Custom Resource Definition, CRD) BackendConfig den folgenden IAP-Block hinzu. Dadurch wird IAP mit dem von Google verwalteten OAuth 2.0-Client aktiviert.
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
name: config-default
namespace: my-namespace
spec:
iap:
enabled: true
Mit einem Dienstkonto-JWT bei IAP authentifizieren
Sie können sich bei IAP authentifizieren, ohne die eingestellte OAuth Admin API verwenden zu müssen. Dazu verwenden Sie ein Dienstkonto-JWT.
Secret eines OAuth-Clients abrufen
Wenn Sie den Clientschlüssel eines OAuth-Clients abrufen möchten, ohne die eingestellte OAuth Admin API zu verwenden, nutzen Sie Secret Manager. Folgen Sie dazu der Anleitung in diesem Terraform-Beispiel: google_secret_manager_secret
.
Herausfinden, ob Sie die OAuth Admin API verwenden
So prüfen Sie, ob Sie die OAuth Admin API verwenden:
Öffnen Sie in der Google Cloud Console die Seite „IAP APIs“ (IAP-APIs) und wählen Sie das Projekt aus, das Sie analysieren möchten.
Zur Seite „IAP APIs“Wählen Sie in der Liste Grafiken auswählen die Option Traffic nach API-Methode aus und klicken Sie dann auf OK.
Suchen Sie im Abschnitt Methods (Methoden) nach Methoden mit dem Präfix
google.cloud.iap.v1.IdentityAwareProxyOAuthService
. Das weist darauf hin, dass das Projekt die OAuth Admin API verwendet.