Erläuterungen zu App-Gateway

Das App-Gateway ist eine Software-Appliance, mit der Sie Anwendungen, die auf einer Compute-Instanz, in einer Cloud-Infrastruktur oder auf einem On-Premise-Server gehostet werden, zu Authentifizierungszwecken in IAM integrieren können.

Das App-Gateway fungiert als Reverse-Proxy, der Webanwendungen schützt, indem er nicht autorisierten Netzwerkzugriff auf diese einschränkt. Das App-Gateway fängt alle HTTP-Anforderungen an diese Anwendungen ab und stellt sicher, dass die Benutzer mit IAM authentifiziert wurden, bevor die Anforderungen an diese Anwendungen weitergeleitet werden. Das App-Gateway propagiert die Identität des authentifizierten Benutzers an die Anwendungen.

Wenn der Benutzer nicht mit IAM authentifiziert ist, leitet das App-Gateway den Benutzer für die Validierung der Zugangsdaten zur Anmeldeseite um.

Hinweis

Wenn Sie Cloud Gate verwenden, ist es wichtig, dass der Name eines Benutzers nur die unter Benutzer erstellen angezeigten Zeichen enthält, da der Anzeigename als HTTP-Header gesendet wird. Wenn nicht druckbare ASCII-Zeichen verwendet werden, betrachtet Cloud Gate die Anforderung als ungültig und gibt einen 400-Fehler zurück.

Anwendungsmöglichkeiten für App-Gateway

Mögliche Aktionen mit App-Gateway:

  • Integration von Unternehmensanwendungen, die entweder On Premise oder in einer Cloud-Infrastruktur gehostet werden, mit IAM zu Authentifizierungszwecken.

    Beispiel: Wenn eine Webanwendung On Premise oder in einer Cloud-Infrastruktur gehostet wird, können Sie diese Anwendung in andere cloudbasierten Anwendungen für Single Sign-On integrieren. Verwenden Sie das App-Gateway, um eine Webanwendung mit IAM zu integrieren. Stellen Sie dann sicher, dass die anderen Cloud-basierten Anwendungen IAM als Authentifizierungsmechanismus verwenden. All diese Anwendungen verwenden die Single Sign-On, die von IAM bereitgestellt wird.

  • Bereitstellen von Internetzugriff für Intranetwebanwendungen.

    Wenn die Webanwendung über ein Intranet gehostet und aufgerufen wird und Sie Zugriff auf diese Anwendung über das Internet bereitstellen möchten, verwenden Sie das App-Gateway als Proxy für Internetanforderungen, und legen Sie fest, dass Benutzer sich mit IAM authentifizieren müssen, bevor sie auf die Intranetwebanwendung zugreifen können. In diesem Fall stellen Sie das App-Gateway in der Netzwerk-DMZ bereit, während die Anwendung in der Intranetzone bleibt.

  • Integration mit Anwendungen, die keinen nativen Authentifizierungsmechanismus haben und keine SAML-Föderations-, OAuth- oder OpenID Connect-Integrationsmethoden unterstützen.

    Wenn die Anwendung die von IAM unterstützten Standards für die Authentifizierung (SAML, OAuth und OpenID Connect) nicht unterstützt und Sie keine IAM-SDKs in der Anwendung verwenden können, können Sie die Webanwendung mit dem App-Gateway in IAM integrieren.

  • Integration mit Anwendungen, die die HTTP-Header-basierte Authentifizierung unterstützen.

    Für Webanwendungen, die die HTTP-Header-basierte Authentifizierung unterstützen, erfordert die Integrationsmethode des App-Gateways keine Änderung am Quellcode der Webanwendung. Sie müssen die Authentifizierungs-Policys der Anwendung in IAM konfigurieren, um Headervariablen in der Anforderung hinzuzufügen, bevor das App-Gateway die Anforderung an die Anwendung weiterleitet. Dadurch kann die Anwendung den mit IAM authentifizierten Benutzer identifizieren.

Funktionsweise des App-Gateways

Das App-Gateway wird in der Infrastruktur eines Kunden bereitgestellt, unabhängig davon, ob sich die Infrastruktur in der Cloud, On Premise oder in einer hybriden Umgebung befindet. Es fungiert als Reverse-Proxy und fängt alle Anforderungen vom Client an die Anwendung ab. Anschließend prüft das App-Gateway, ob ein Benutzer bereits bei IAM angemeldet ist. Wenn sich der Benutzer angemeldet hat, fügt das App-Gateway der Anforderung Headervariablen hinzu, damit die geschützte Anwendung auf die Headervariable zugreifen kann. Die Anwendung geht davon aus, dass das App-Gateway den angemeldeten Benutzer in Identitätsdomainwerten identifiziert hat, und erstellt die Benutzersession.

Stellen Sie sicher, dass die Kommunikation zwischen App-Gateway und Anwendung sicher ist, um Änderungen an den Headervariablenwerten zu vermeiden, bevor die Anforderung an die Anwendung gesendet wird.

zeigt, wie Anwendung, App-Gateway, Identitätsdomain und der Benutzerbrowser interagieren, wenn ein Benutzer versucht, auf eine Anwendungsressource zuzugreifen, der Benutzer jedoch bei keiner Identitätsdomain angemeldet ist

Die folgenden Schritte erläutern den formularbasierten Authentifizierungsablauf zwischen Webbrowser, App-Gateway und einer Unternehmensanwendung:

Schritt Beschreibung
Callout 1 Ein Benutzer fordert in einem Webbrowser Zugriff auf eine Anwendung über eine vom App-Gateway bereitgestellte URL an.
Callout 2

Das App-Gateway fängt die Anforderung ab, prüft, ob der Benutzer über eine Session mit IAM verfügt, und leitet den Browser des Benutzers dann zur Anmeldeseite um.

Wenn der Benutzer in Schritt 2 eine Session mit IAM hat, bedeutet das, dass der Benutzer bereits angemeldet ist. In diesem Fall wird ein Zugriffstoken an das App-Gateway gesendet, und die restlichen Schritte werden übersprungen.

Callout 3 IAM zeigt die Anmeldeseite bzw. den jeweiligen Anmeldemechanismus an, der für die Domain konfiguriert wurde.
Callout 4 Der Benutzer meldet sich bei IAM an.
Callout 5 Nach erfolgreicher Authentifizierung erstellt IAM eine Session für den Benutzer und stellt ein Zugriffstoken an das App-Gateway aus.
Callout 6 Das App-Gateway verwendet das Token, um den Benutzer zu identifizieren. Anschließend werden Headervariablen zur Anforderung hinzugefügt und die Anforderung an die Anwendung weitergeleitet.
Callout 7 Die Anwendung erhält die Headerinformationen, validiert die Benutzeridentität und startet die Benutzersession.

Das App-Gateway fängt alle nachfolgenden Anforderungen an die geschützten Ressourcen der Anwendung ab. Das App-Gateway identifiziert den Benutzer, fügt der Anforderung Headervariablen hinzu und leitet die Anforderung an die Anwendung weiter.

Um sich abzumelden, ruft der Benutzer die Abmelde-URL einer Anwendung auf. Das App-Gateway identifiziert die Abmelde-URL und leitet den Benutzer zum OAuth-Abmeldeendpunkt der Identitätsdomain (/oauth2/v1/userlogout) um. Nachdem IAM den Benutzer abgemeldet hat, kann IAM den Browser des Benutzers zu einer URL der Anwendung umleiten, die dann die Benutzersession der Anwendung entfernen kann.

Abmeldung vom App-Gateway

Benutzer können sich über zwei verschiedene Verfahren von den durch das App-Gateway geschützten Anwendungen abmelden: die Abmelde-URL des App-Gateways oder Aufruf einer durch eine Abmeldeauthentifizierungsmethode geschützten Ressource.

Abmelde-URL des App-Gateways verwenden

Das App-Gateway bietet eine zentrale Abmelde-URL, mit der Benutzer sich von der von IAM bereitgestellten Single-Sign-On-Umgebung abmelden können. Jeder Aufruf dieses Endpunkts löst den Abmeldeprozess aus. Nachdem Benutzer abgemeldet wurden, müssen sie sich bei jedem nachfolgenden Zugriff auf eine geschützte Anwendungsressource erneut bei IAM anmelden.

Dieser Endpunkt unterstützt zwei an die URL angehängte Parameter:
  • postlogouturl: Die URL einer Landingpage nach der Abmeldung. Dieser Wert muss URL-codiert sein. Wenn der Parameter nicht angegeben ist, leitet das App-Gateway den Benutzerbrowser zur Abmelde-URL um, die in den Sessioneinstellungen der Konsole angegeben ist.
  • status: Dieser optionale Parameter wird von der Unternehmensanwendung verwendet, nachdem der Abmeldeprozess abgeschlossen ist.

Syntax

http(s)://<appgateway_host>:<appgateway_port>/cloudgate/logout.html?postlogouturl=<url_encoded>&state=<state_value>

Abmeldeendpunkt mit Parametern

Wenn die Basis-URL des App-Gateways https://myappgateway.example.com:4443 lautet, verwenden Sie die folgende URL für die Benutzerabmeldung von Single Sign-On: https://myappgateway.example.com:4443/cloudgate/logout.html?postlogouturl=http%3A%2F%2Fwww.oracle.com&state=123

Durch Abmeldeauthentifizierungsmethode geschützte Ressource verwenden

Sie können eine Ressource in der Unternehmensanwendung erstellen und mit der Authentifizierungsmethode Formulare + Abmeldung eine Authentifizierungs-Policy für diese Ressource konfigurieren. Wenn der Benutzer auf diese Ressource zugreift, ruft das App-Gateway den Abmeldeprozess auf und meldet sich von der von IAM bereitgestellten Single-Sign-On-Umgebung ab.

Syntax

http(s)://<appgateway_host>:<appgateway_port>/<logout_resource>

Durch Abmeldeauthentifizierungsmethode geschützte Ressource

Wenn Sie die Ressource /myapp/logout in der Unternehmensanwendung erstellt und Forms+Logout als Authentifizierungsmethode für diese Ressource im Abschnitt Authentifizierungs-Policy zugewiesen haben, werden Benutzer beim Zugriff auf die URL https://myappgateway.example.com:4443/myapp/logout von der von IAM bereitgestellten Single Sign-On-Ressource abgemeldet.