SSO zwischen Azure AD und Oracle Access Manager für Oracle E-Business Suite einrichten

Wenn ein Kunde eine Oracle-Anwendung (wie Oracle E-Business Suite) auf Microsoft Azure ausführen möchte, aber den On-Premise-Oracle Access Manager als Serviceanbieter verwenden möchte, ist föderiertes SSO zwischen Azure AD und On-Premise-OAM erforderlich.

Da es bei der Arbeit mit anderen Cloud-Anwendungen logisch die größte Integrationsunterstützung in der Cloud bietet, ist es eine ideale Lösung, SAML 2.0 für die erforderliche föderierte SSO-Architektur zu konfigurieren.

Bevor Sie beginnen

Bevor Sie eine Anwendung in Microsoft Azure ausführen, die mit einer Datenbank in Oracle Cloud verbunden ist, sollten Sie sich mit der Netzwerkarchitektur für die Verbindung von Workloads vertraut machen, die in Oracle Cloud und Microsoft Azure bereitgestellt sind.

Siehe Informationen zum Verbinden von Oracle Cloud mit Microsoft Azure.

Architektur

Diese Lösung bietet eine Architektur, die ein hybrider Ansatz für eine bereits dokumentierte On-Premise-Integration zwischen Oracle Access Manager und E-Business Suite ist.

Dies gilt als hybride Architektur, weil:
  • Oracle E-Business Suite wird in Azure gespeichert.
  • Er verwendet Azure Active Directory (Azure AD) als föderierten Identitätsprovider (IDP), um einen Benutzer bei E-Business Suite zu authentifizieren.
  • Sie führen Oracle Access Manager als Serviceprovider (SP) On Premise mit dem Backend-LDAP-Server (entweder Oracle Unified Directory oder Oracle Internet Directory) aus.
Beschreibung von ebiz-architecture.png folgt
Beschreibung der Abbildung ebiz-architecture.png

Mit diesem Ansatz können Sie einen Schritt näher an der Verlagerung einiger Infrastruktur in die Cloud heranreichen. Sie muss nicht mit E-Business Suite gestoppt werden - Oracle Access Manager und Oracle Unified Directory oder Oracle Internet Directory können ebenfalls in die Cloud verschoben werden.

Ein weiterer wichtiger Teil dieser Architektur ist das Provisioning von Benutzerkonten. In diesem Papier wird davon ausgegangen, dass Azure AD die Quelle der Wahrheit für Benutzerkonten ist. Das bedeutet, dass eine Provisioning-Methode wie die Oracle Directory Integration Platform-Synchronisierung oder ein Identity-Management-Tool wie Microsoft Identity Manager oder Oracle Identity Manager verwendet werden muss, um Benutzeraccounts auf dem Oracle Access Manager-LDAP-Server (Oracle Unified Directory oder Oracle Internet Directory) bereitzustellen. Anschließend kann Oracle Directory Integration Platform als bidirektionaler Synchronisierungsservice diesen Account mit der E-Business Suite-Datenbank synchronisieren. Bestimmte Schlüsselattribute, die für SSO wichtig sind, werden später in diesem Dokument behandelt.

Komponenten

Die Komponenten in dieser Hybridarchitektur, wie in der Abbildung oben dargestellt, sind in der folgenden Tabelle beschrieben.

Data Center Komponente
Azure
  • Azure AD
  • Oracle E-Business Suite 12.2.x
  • Oracle HTTP Server 11g oder 12c
  • Oracle WebGate 11g oder 12c
  • Oracle AccessGate 11g oder 12c
Oracle Cloud Infrastructure Oracle E-Business Suite Database 12.2 oder höher
Kunden On Premise
  • Oracle Access Manager 11g oder 12c
  • Oracle Unified Directory oder Oracle Internet Directory 11g oder 12c
  • Oracle Directory Integration Platform 11g oder 12c
  • Oracle HTTP Server 11g oder 12c (optional)

Provisioning- und Federation-Abläufe verstehen

Das vorhergehende Diagramm zeigt die kombinierten Provisioning- und Federation-Abläufe, die für diese Architektur definiert sind.

Dieser Provisioning-Ablauf (weiter unten in den Transaktionen 1-3 beschrieben) veranschaulicht ein Beispiel dafür, wie ein Benutzeraccount in Azure AD erstellt, für den Oracle Access Manager-LDAP-Server bereitgestellt und mit Oracle Directory Integration Platform mit der E-Business Suite-Datenbank synchronisiert wird. Der Föderationsablauf wird in den Transaktionen 4-10 dargestellt. Weitere Details zum Federation-Ablauf werden unter Azure AD und E-Business Suite Federation Flow verstehen beschrieben.

  1. Ein anfänglicher Benutzeraccount, der den Benutzer-Principal-Namen (UPN) enthält, wird von Azure AD auf den Oracle Access Manager-LDAP-Server (Oracle Unified Directory oder Oracle Internet Directory) bereitgestellt. Dieses Provisioning ist nicht für Oracle Directory Integration Platform zuständig, sondern wird von einer Art Provisioning außerhalb des Geltungsbereichs dieses Playbooks ausgeführt.
  2. Oracle Directory Integration Platform horcht auf Oracle Unified Directory-Änderungslogs und stellt den Benutzeraccount für die E-Business Suite-Datenbank bereit.
  3. Oracle Directory Integration Platform stellt den Benutzeraccount bereit, der UID USER_NAME und orclguid USER_GUID der E-Business Suite-Datenbank zuordnet.
  4. Der Benutzer fordert E-Business Suite-Zugriff an, und WebGate prüft auf das Token OAMAuthCookie.
  5. WebGate prüft, ob für den Benutzer kein OAMAuthCookie-Token vorhanden ist. Daher wird mit Oracle Access Manager eine Aktion geprüft.
  6. Oracle Access Manager weist WebGate an, den Benutzer zur föderierten Authentifizierung an Azure AD umzuleiten, und Azure AD fordert den Benutzer zur Anmeldung auf.
  7. Azure AD validiert die Zugangsdaten des Benutzers und sendet dann eine SAML 2.0-Assertion an Oracle Access Manager, wobei das E-Mail-Attribut als Benutzerzuordnung verwendet wird.
  8. Oracle Access Manager akzeptiert die SAML 2.0-Assertion und gibt den übereinstimmenden Benutzer in Oracle Unified Directory mit der UPN zurück. In der Antwort werden USER_NAME (uid) und USER_ORCLGUID (orclguid) aus Oracle Unified Directory in dem in der Policy definierten Header bereitgestellt.
  9. WebGate leitet den Benutzer an E-Business Suite um und sendet USER_NAME und USER_ORCLGUID als Header an AccessGate.
  10. AccessGate sucht USER_NAME und USER_ORCLGUID in der E-Business Suite-Datenbank, um zu prüfen, ob der Benutzer vorhanden ist. Bei Erfolg wird eine eigene Session festgelegt, und die E-Business Suite-Portalseite wird an den Benutzer zurückgegeben.

Erforderliche Services und Rollen

Diese Lösung erfordert die Kombination bestimmter Services und Rollen innerhalb dieser Services.

Diese Services und Anwendungen sind erforderlich:
  • Oracle Cloud Infrastructure
  • Oracle Access Manager
  • Eine voll funktionsfähige Oracle E-Business Suite-Instanz, die in Azure bereitgestellt ist
  • Microsoft Azure-ANZEIGE
Servicename: Rolle Erforderlich für...
Oracle Cloud Infrastructure: Administrator Identitätsressourcen erstellen und verwalten
Oracle Access Manager: Administrator Benutzereinstellungen On Premise konfigurieren und verwalten
E-Business Suite: Administrative Rollen, einschließlich Datenbankadministrator und LDAP-Administrator E-Business Suite konfigurieren und Sicherheitseinstellungen ändern
Azure AD: Azure AD-Mitwirkender oder privilegierterer Account So erhalten Sie ein Azure-Abonnement
Azure AD: Azure-Anwendung oder globaler Administrator Konfiguration verarbeiten und auf der Azure-Seite einrichten