Auf dieser Seite wird gezeigt, wie Sie mit Abfrageparametern und -headern von Identity-Aware Proxy (IAP) die Anwendungs-UI erweitern oder Optionen zur Fehlerbehebung bereitstellen können.
Abfrageparameter
Sie können verschiedene Aktionen ausführen, indem Sie den Parameter gcp-iap-mode
im URL-Abfragestring festlegen.
Diese Abfrageparameter können in einem beliebigen Pfad verwendet werden, nicht nur der Stamm-URL.
Nutzeridentität übergeben
Durch Übergabe des folgenden Parameterwertes wird ein JSON-Wörterbuch mit der Identität des Nutzers zurückgegeben:
YOUR_APP_URL?gcp-iap-mode=IDENTITY
Diese Funktion ist über jedes angemeldete Google-Konto verfügbar, auch wenn das Konto keinen Zugriff auf die Anwendung hat. Sie können die URL direkt aufrufen oder auf sie verweisen, um Anfragen an die URL zu senden. Im Folgenden ist ein Beispielwert aufgeführt, der von der URL zurückgegeben wird:
{"email":"accounts.google.com:USER_EMAIL","sub":"accounts.google.com:118133858486581853996"}
Dieser Wert kann für das Personalisieren Ihrer Anwendung hilfreich sein. So lässt sich damit z. B. der Name des Nutzers anzeigen, um die Identität an eine andere Seite zu übergeben oder um die Nutzungsdaten in Logs zu erfassen.
Nutzeranmeldung löschen
Mit dem folgenden Parameterwert wird das IAP-Anmeldecookie gelöscht:
YOUR_APP_URL?gcp-iap-mode=CLEAR_LOGIN_COOKIE
Wenn Sie diesen Parameter übergeben, werden alle von IAP ausgestellten Cookies für Ihre App gelöscht und der Browser wird zu YOUR_APP_URL
weitergeleitet. Wenn Ihr Browser eine gültige Sitzung mit dem Identitätsanbieter (IdP) Ihrer App hat, kann es zu einer stillen Anmeldung kommen, wenn nur ein Konto beim IdP verwendet wird. Wenn mehrere Konten verwendet werden, wird eine Kontoauswahlseite geöffnet, über die Sie das Profil wechseln können.
JWT-Überprüfung testen
IAP unterstützt Sie beim Testen der Logik zur JWT-Überprüfung. Dazu werden ungültige JWTs an Testwebseiten übergeben.
IAP übergibt beispielsweise ein JWT mit einer ungültigen Signatur für jede Anfrage, die die Abfrageparameter gcp-iap-mode=SECURE_TOKEN_TEST
und iap-secure-token-test-type=SIGNATURE
enthält.
Ihre Überprüfungslogik muss diese ungültige Signatur erkennen.
Sie können Ihre Überprüfungslogik auf eines der folgenden Szenarien testen, indem Sie die entsprechenden Parameter an eine Anfrage anhängen.
Parameter | Testfall |
---|---|
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=NOT_SET | Ein gültiges JWT |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=FUTURE_ISSUE | Das Ausstellungsdatum liegt in der Zukunft |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=PAST_EXPIRATION | Das Ablaufdatum liegt in der Vergangenheit |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=ISSUER | Falscher Aussteller |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=AUDIENCE | Falsche Zielgruppe |
?gcp-iap-mode=SECURE_TOKEN_TEST&iap-secure-token-test-type=SIGNATURE | Mit falschem Unterzeichner signiert |
Spezielle Header
Antworten von IAP erkennen
Wenn Cloud IAP eine HTTP-Antwort generiert, z. B. bei einer Zugriffsverweigerung (403) oder Authentifizierungsanforderung (302 oder 401), wird der HTTP-Antwortheader X-Goog-IAP-Generated-Response
hinzugefügt. Durch Ermittlung eines solchen Headers sind Aktionen folgender Art möglich:
Zwischen Fehlermeldungen unterscheiden, die von IAP generiert, und solchen, die von der Anwendung generiert wurden
Erkennen, wann IAP-Anmeldedaten zu einer Anfrage hinzugefügt werden müssen