SSO-Authentifizierungs-Policy konfigurieren
Erstellen Sie eine Authentifizierungs-Policy für jede Ressource, die Sie für die Unternehmensanwendung erstellt haben.
- Wählen Sie auf der Listenseite Integrierte Anwendungen die zu ändernde Unternehmensanwendung aus. Wenn Sie Hilfe beim Suchen der Listenseite benötigen, finden Sie weitere Informationen unter Anwendungen auflisten.
-
Wählen Sie auf der Seite Anwendungsdetails die Option SSO-Konfiguration und dann SSO-Konfiguration bearbeiten aus. Aktivieren Sie bei Bedarf im Abschnitt Authentifizierungs-Policy die Option Zielgruppenvalidierung, CORS zulassen oder Sichere Cookies erforderlich.
- Zielgruppenvalidierung: Stellen Sie aus Sicherheitsgründen sicher, dass das Kontrollkästchen Zielgruppenvalidierung aktiviert ist. Mit dem Kontrollkästchen "Zielgruppenvalidierung" können Sie sicherstellen, dass das Token vom bekannten Aussteller des App-Gateway ausgegeben wurde (in diesem Fall IAM). Wenn Sie die Zielgruppenvalidierung deaktivieren, validiert das App-Gateway die Zielgruppe des Tokens nicht. Dadurch wird die Anwendung anfällig gegenüber Angriffen.
- CORS zulassen: Wählen Sie diese Option aus, um CORS (Cross-Origin Resource Sharing) zu aktivieren, damit Anwendungen, die auf einer Identitätsdomain ausgeführt werden, Daten von einer anderen Identitätsdomain abrufen können.
- Sichere Cookies erforderlich: Wenn das App-Gateway im SSL-Modus (HTTPS) konfiguriert ist, stellen Sie sicher, dass Sichere Cookies erforderlich ausgewählt ist. Dieses Flag legt den sicheren Header fest, um zu verhindern, dass Cookies in einer nicht sicheren HTTP-Kommunikation verwendet werden. Wenn das App-Gateway im Nicht-SSL-Modus (HTTP) konfiguriert ist, deaktivieren Sie Sichere Cookies erforderlich.
- Wählen Sie Verwaltete Ressource hinzufügen aus.
- Wählen Sie im Fenster Verwaltete Ressource hinzufügen in der Liste der erstellten Ressourcen im Abschnitt Ressourcen die Ressource aus, für die Sie eine Authentifizierungs-Policy konfigurieren möchten, oder fügen Sie eine verwaltete Ressource hinzu.
-
Definieren Sie die Authentifizierungsmethode für die ausgewählte Ressource anhand der folgenden Tabelle:
Authentifizierungsmethode
Beschreibung
Basisautorisierung
Die Methode Basisauthentifizierung führt die HTTP-Basisauthentifizierung durch. Wenn die Anforderung keinen
Authentication Basic
-Header enthält, fordert der Browser des Benutzers zur Eingabe von Zugangsdaten auf.Die im
AuthenticationBasic
-Header gesendeten Zugangsdaten werden in IAM validiert.Basis Auth+Logout
Mit dieser Methode wird die Anwendungsressource (URL) geschützt, die den Abmeldeprozess der Anwendung darstellt.
Wenn das App-Gateway eine Anforderung an diese Ressource abfängt, wird der HTTP-Abmeldeprozess initiiert. Dieser Prozess löscht alle HTTP-Sessioncookies, die von der Authentifizierungsmethode Basisauthentifizierung + Session erstellt wurden.
Nach Abschluss des Abmeldeprozesses leitet das App-Gateway den Benutzerbrowser an die Ressource der angeforderten Anwendung weiter.
Beim HTTP-Abmeldeprozess werden keine vom Browser in der aktuellen Browsersession gecachten Zugangsdaten gelöscht. Anschließend wird der Benutzer bei späteren Anforderungen möglicherweise nicht erneut zur Eingabe aufgefordert.
Grundlegende Auth+Session
Funktioniert genauso wie Basisauthentifizierung. Nachdem die Zugangsdaten validiert wurden, wird ein HTTP-Sessioncookie (
ORA_OCIS_CG_BA_SESSION
) erstellt.Formular oder Zugriffstoken
Bei dieser Authentifizierungsmethode delegiert das App-Gateway die Erfassung und Validierung von Zugangsdaten an IAM.
Wenn ein
Authorization Bearer
-Header in der Anforderung vorhanden ist, ähnelt die Authentifizierung einem Ressourcenserverablauf. Wenn einuser-agent
-Header vorhanden ist, findet ein Benutzerbrowserablauf statt.Der Benutzerbrowserablauf leitet den Benutzerbrowser zur Erfassung und Validierung der Zugangsdaten an IAM um und erstellt dann ein OAuth-Sessioncookie (
ORA_OCIS_CG_SESSION_*
).Wenn ein
Authorization session
-Header in der Anforderung vorhanden ist und das OAuth-Sessioncookie fehlt oder ungültig ist, wird der übliche OAuth-Anmeldeablauf unterdrückt. Stattdessen wird ein401
-HTTP-Fehlercode zusammen mit einemWWW-Authenticate: Bearer error="invalid_session"
-Header zurückgegeben. Dieser Ablauf wird von Anwendungen verwendet, die eine unerwünschte Anmeldung auslösen können, wenn Anforderungen einenuser-agent
-Header, aber keinenAuthorization Bearer
-Header enthalten, sodass sie die erneute Authentifizierung selbst verarbeiten können.Form+Logout
Mit dieser Methode wird die Anwendungsressource (URL) geschützt, die den Abmeldeprozess der Anwendung darstellt.
Die URL dieser Ressource muss von der Anwendung nicht verfügbar gemacht werden, da das App-Gateway den Benutzerbrowser an den IAM-OAuth-Abmeldeendpunkt (
/oauth2/v1/userlogout
) umleitet, anstatt die Anforderung an die Anwendungs-URL weiterzuleiten.Im Fenster Ressource hinzufügen ist die Post-Abmelde-URL die URL, an die das App-Gateway den Benutzerbrowser nach der Abmeldung umleitet. Sie können auch einen Parameterwert für Post-Logout-Status angeben, der von der URL-Seite nach der Abmeldung der Anwendung verwendet werden soll.
Multi-Token
Führt die Authentifizierung basierend auf dem Inhalt des
Authorization
-Headers der Anforderung aus:- Wenn die Anforderung einen
Authorization Basic
-Header enthält, verarbeitet das App-Gateway diese Authentifizierung als Basisauthentifizierung. - Wenn die Anforderung einen
Authorization Bearer
- oderAuthorization Session
-Header enthält, verarbeitet das App-Gateway diese Authentifizierung als Formular oder Zugriffstoken. - Wenn der Autorisierungsheader fehlt oder einen anderen Wert aufweist, wird ein
401 Unauthoized
-HTTP-Fehler zurückgegeben.
Multitoken+Fallthrough
Identisch mit Multitoken. Wenn der
Authorization
-Header jedoch nichtBasic
,Bearer
odersession
ist, fungiert das Anforderungs-App-Gateway als Authentifizierungsmethode Basisautorisierung, anstatt den HTTP-Fehler401 Unauthoized
anzuzeigen.Anonym
- Wenn ein gültiges OAuth-Sessioncookie vorhanden ist, werden die in der Authentifizierungs-Policy konfigurierten Header der Anforderung hinzugefügt, und die Anforderung wird an die Anwendung weitergeleitet.
- Wenn das OAuth-Sessioncookie fehlt oder abgelaufen ist, funktioniert diese Methode genauso wie die Authentifizierungsmethode Öffentlich. In diesem Fall wird der Anforderung ein
REMOTE_USER
-Header mit dem Wertanonymous
hinzugefügt.
Bei beiden Optionen werden die in der Authentifizierungs-Policy konfigurierten Header der Anforderung hinzugefügt, die Authentifizierung wird jedoch nicht ausgeführt.
Öffentlich
Es wird keine Authentifizierung ausgeführt. Die Anforderung wird unverändert an die Anwendung weitergeleitet.
Nicht unterstützt
Diese Methode gibt immer den HTTP-Fehlercode
500 Not Supported
zurück.Beispiel: Sie können diese Methode verwenden, um den Zugriff auf eine geschützte URL zu deaktivieren, die in der Anwendung verfügbar ist, für Benutzer jedoch nicht zugänglich sein soll.
- Wenn die Anforderung einen
-
Die im vorherigen Schritt ausgewählte Authentifizierungsmethode ist für alle HTTP-Methoden gültig (
GET
,HEAD
,DELETE
,PUT
,OPTIONS
,CONNECT
,POST
oderPATCH
). Wenn Sie andere Authentifizierungsmethoden für HTTP-Methoden angeben möchten (z.B. die Authentifizierungsmethode Formular + Zugriffstoken für die HTTP-MethodeGET
und die Authentifizierungsmethode Multitoken für die HTTP-MethodePOST
), können Sie das Menü Authentifizierungsmethoden-Overrides verwenden. Wählen Sie die HTTP-Methode und dann die gewünschte Authentifizierungsmethode aus. Wenn Sie mehrere HTTP-Methoden außer Kraft setzen müssen, wiederholen Sie diesen Schritt mehrmals. -
Wenn Sie der Anforderung eine Headervariable hinzufügen möchten, damit das App-Gateway sie an die Anwendung weiterleitet, wählen Sie das Pluszeichen + für Header aus, geben Sie den Namen an, und wählen Sie dann den Wert für die Headervariable in der Liste der Benutzerattribute aus, geben Sie einen festen Wert ein, oder geben Sie einen Ausdruck an. Um mehr als eine Headervariable hinzuzufügen, wählen Sie das Symbol + für Header mehrmals aus.
Beispiel: Für die Anwendung muss in jeder Anforderung eine Headervariable mit dem Namen
USERLOGGEDIN
vorhanden sein, damit die Anwendung die ID des Benutzers kennt, der bei IAM angemeldet ist. Sie müssen eine Headervariable hinzufügen, geben SieUSERLOGGEDIN
für das Feld Name ein, und wählen Sie entweder Benutzername in der Liste aus, oder geben Sie$subject.user.userName
für Wert ein.Hinweis
Sie können ein Benutzerattribut im Menü auswählen oder einen Ausdruck mit einem beliebigen Attribut aus dem SCIM-Benutzerschema von IAM als Headervariablenwert angeben. Siehe Unterstützte Headerwertausdrücke für Authentifizierungs-Policys.
- Wählen Sie Verwaltete Ressource hinzufügen aus.
- Wählen Sie Speichern aus.