IAP mit Sitzungen der Workforce Identity-Föderation verwalten

Auf dieser Seite finden Sie eine Anleitung zum Verwalten von Identity-Aware Proxy (IAP) mit Workforce Identity-Föderationssitzungen.

Wenn Sie einen Workforce-Pool einrichten, können Sie die Sitzungsdauer zwischen Google Cloud und einem IdP angeben. Sie können eine Sitzungsdauer zwischen 15 Minuten und 12 Stunden angeben. Diese Einstellung entspricht auch der Länge des IAP-Sitzungscookies. Die Standard-Sitzungsdauer beträgt eine Stunde.

Wenn eine Sitzung abläuft, wird der Endnutzer zur Anmeldung an den externen IdP weitergeleitet. Wenn die Sitzung des externen Identitätsanbieters noch aktiv ist, erfolgt die Anmeldung im Hintergrund.

Weitere Informationen zum Festlegen der Sitzungsdauer finden Sie unter Anbieter von Mitarbeiteridentitätspools verwalten.

Sitzung mit einer AJAX-Anfrage einrichten

Wenn Sie mit der Workforce Identity-Föderation arbeiten, können Sie auch AJAX-Anfragen stellen, um eine Sitzung einzurichten.

IAP verwendet Cookies, um Nutzersitzungen zu verwalten, und eine Reihe von Weiterleitungen, um bei der Anmeldung eine Sitzung einzurichten. Wenn Ihre Anwendung Cross-Origin Resource Sharing (CORS) verwendet, um AJAX-Anfragen von einer Quelldomain an eine Zieldomain zu senden, die eine IAP-gesicherte Anwendung hostet, müssen Sie zuerst eine Out-of-Band-IAP-Sitzung auf der Zieldomain einrichten. Cookies können nicht zwischen der Quell- und der Zieldomain geteilt werden.

Nachdem eine Sitzung in der Zieldomain eingerichtet wurde, konfigurieren Sie Ihre Anfragen so, dass sie Anmeldedaten enthalten, da JavaScript-Methoden standardmäßig keine Cookies anhängen:

  • Legen Sie für XMLHttpRequest-Objekte das Attribut withCredentials auf true fest.
  • Legen Sie für Fetch API die Option credentials auf include oder same-origin fest.

Bei abgelaufenen oder nicht authentifizierten AJAX-Anfragen gibt IAP den HTTP-Statuscode 401: Unauthorized zurück. Wenn Ihre AJAX-Anfragen den Statuscode 302 anstelle von 401 erhalten, fügen Sie einen X-Requested-With-Header mit dem Wert "XMLHttpRequest" hinzu, um anzugeben, dass die Anfrage von JavaScript stammt. Wenn Sie die Sitzung nach Erhalt einer HTTP-401-Antwort einrichten oder aktualisieren möchten, öffnen Sie ein neues Fenster für die URL der Zieldomain mit angehängtem ?gcp-iap-mode=DO_SESSION_REFRESH.

Weitere Informationen und Codebeispiele finden Sie unter AJAX-Anfragen.