Remarque :

Intégrer Oracle Banking Digital Experience avec la commande Ping pour l'accès avec connexion unique

Introduction

SAML 2.0 (Security Assertion Markup Language) est une norme ouverte créée pour fournir une connexion unique (SSO) interdomaine. En d'autres termes, il permet à un utilisateur de s'authentifier dans un système et d'accéder à un autre système en fournissant une preuve de son authentification. Oracle Banking Digital Experience prend en charge SAML2 afin de s'intégrer à IdP (fournisseur d'identités, tel qu'Oracle Identity Cloud Service, qui prend en charge cette technologie). Oracle Identity Cloud Service gère l'accès des utilisateurs et les habilitations pour un large éventail de services et d'applications cloud et on-premise à l'aide d'une plate-forme cloud native Identity as a Service (IDaaS) qui fait office de porte d'entrée dans Oracle Cloud pour les identités externes.

SAML est un protocole d'authentification XML dans lequel des fournisseurs d'identités (tels qu'Oracle Identity Cloud Service, Ping, Okta) -- des entités qui gèrent et stockent les informations d'identification utilisateur -- échangent des documents XML signés numériquement (assertions SAML) permettant à un utilisateur final d'accéder à un fournisseur de services (Oracle Banking Digital Experience). Pour plus d'informations, reportez-vous à SAML et accès avec connexion unique (SSO).

Avec SAML, le workflow d'authentification peut être lancé par le fournisseur de services ou le fournisseur d'identités (IdP). L'authentification lancée par IdP se produit si l'utilisateur est connecté à son tableau de bord d'organisation. Dans ce cas, IdP envoie une assertion SAML via le navigateur Web pour les connecter automatiquement.

L'authentification initiée par le SP se produit si un employé tente de se connecter à ce site externe (le SP) et que le site les redirige vers sa page de connexion SSO (Single Sign-On) d'entreprise pour saisir ses informations d'identification et s'authentifier. Après l'authentification, l'employé est redirigé vers le site externe avec une assertion SAML prouvant son identité.

Objectifs

Ce tutoriel aidera les développeurs et les partenaires d'implémentation à exécuter les étapes afin d'intégrer Oracle Banking Digital Experience aux fournisseurs d'identités.

Prérequis

a. Installation d'Oracle Banking Digital Experience

b. Fournisseur d'identités prenant en charge SAML2

Tâche 1 : configuration du domaine de sécurité - mappage des informations d'identification

  1. Connectez-vous à la console d'administration WebLogic et accédez au chemin ci-dessous : Home, Summary of Servers, Summary of Security Realms, myrealm.

  2. Cliquez sur l'option Providers.

  3. Créez un fournisseur d'authentification.

  4. Effectuez les configurations comme indiqué dans la capture d'écran ci-dessous.

    Créer un fournisseur d'authentification

  5. Commandez les fournisseurs comme indiqué dans l'image suivante.

    Fournisseurs d'authentification de commande

  6. Redémarrez le serveur d'administration.

Tâche 2 : Configurer Oracle Banking Digital Experience

  1. Accédez au chemin ci-dessous dans la section Serveur géré : Accueil, Récapitulatif des serveurs, Serveur géré, Services de fédération, Général SAML 2.0.

  2. Entrez les détails de configuration propres au site comme ci-dessous.

    Configuration de site

    URL du site publié : http ://<<HOST>> :<<PORT>>/saml2

  3. Après avoir enregistré et activé les modifications, redémarrez le serveur géré.

  4. Publiez les métadonnées et enregistrez-les dans le fichier XML. Ce fichier de métadonnées doit être fourni à la commande ping ou à toute autre commande IdP.

    Publier les métadonnées SAML 2.0

  5. Accédez au chemin suivant dans la section Serveur géré : Accueil, Récapitulatif des serveurs, Serveur géré, Services de fédération, Fournisseur de services SAML 2.0.

  6. Entrez les détails de configuration propres au site comme ci-dessous.

    Détails de configuration

    Détails de configuration

URL par défaut : http ://<<HOST>> :<<PORT>>/digx/protected/dashboard.jsp

Tâche 3 : configuration du fournisseur d'identités (IdP) - WebLogic

  1. Partagez les détails suivants pour la configuration IdP et la génération de métadonnées IdP.

    • URL de connexion unique : http ://<<HOST>> :<<PORT>>/saml2/sp/acs/post

    • URL du destinataire : http ://<<HOST>> :<<PORT>>/saml2/sp/acs/post

    • Destination sur l'URL : http ://<<HOST>> :<PORT>>/saml2/sp/acs/post

    • URI d'audience (ID d'entité de fournisseur de services) : il doit être identique à l'ID d'entité configuré dans les configurations générales SAML 2.0, à savoir PING_obdx_ID.

  2. Une fois les configurations ci-dessus terminées dans IdP (répondeur SAML), générez des métadonnées IdP et enregistrez-les dans le fichier XML.

Tâche 4 : configuration du domaine de sécurité - Fournisseur IdP

  1. Copiez le fichier XML de métadonnées IdP dans le dossier de domaine du serveur géré.

  2. Accédez au chemin suivant : Home, Summary of Security Realms, myrealm, Providers, SAML2_IA.

  3. Dans la section Gestion, effectuez les configurations ci-dessous pour créer un partenaire de fournisseur d'identités.

    Section de gestion

  4. Sélectionnez le xml de métadonnées IdP copié dans le chemin de domaine du serveur géré.

    IdP Métadonnées

  5. Enregistrez les détails.

  6. Sous Partenaire de fournisseur d'identités, effectuez la configuration suivante.

    Configuration IdP

  7. Redémarrez les serveurs d'administration et les serveurs gérés.

Tâche 5 : Configurer Oracle Banking Digital Experience

Pour obdx.app.rest.idm com.ofss.digx.appx.service.rest.war, configurez les détails suivants.

  1. /protected/dashboard.jsp : met à jour les modifications apportées au cookie de navigateur JSESSIONID.

    \<!DOCTYPE HTML\>
    
     \<html lang=\"en-US\"\>
    
     \<head\>
    
     \<meta charset=\"UTF-8\"\>
    
     \<meta http-equiv=\"refresh\" content=\"1;url=../../home.html\"\>
    
     \<script\>
    
     var JSESSIONID = getCookie(\"JSESSIONID\");
    
     if (typeof(JSESSIONID) != \"undefined\" && JSESSIONID != null &&
     JSESSIONID != \"\") {
    
     mydomain.console.log(\"Found JSESSIONID from SSO relocating to: \" +
     JSESSIONID);
    
     setCookie(\"JSESSIONID\", JSESSIONID, -1, \"/\",
     \"webserverhostname:port\");
    
     document.location.href = JSESSIONID;
    
     }
    
     window.location.href = \"../../home.html\"
    
     \</script\>
    
     \<title\>Page Redirection\</title\>
    
     \</head\>
    
     \<body\>
    
  2. /WEB-INF/web.xml : modifications apportées au rôle de contrainte de sécurité.

    \<security-constraint\>
    
     \<display-name\>Constraint-0\</display-name\>
    
     \<web-resource-collection\>
    
     \<web-resource-name\>Constraint-0\</web-resource-name\>
    
     \<url-pattern\>/protected/\*\</url-pattern\>
    
     \</web-resource-collection\>
    
     \<auth-constraint\>
    
     \<role-name\>valid-users\</role-name\>
    
     \</auth-constraint\>
    
     \<user-data-constraint\>
    
     \<transport-guarantee\>NONE\</transport-guarantee\>
    
     \</user-data-constraint\>
    
    \</security-constraint\>
    
  3. /WEB-INF/weblogic.xml : configurations de cookie et de rôle.

    \<?xml version=\"1.0\" encoding=\"UTF-8\"?\>
    
    \<wls:weblogic-web-app
    
    xmlns:wls=\"http://xmlns.oracle.com/weblogic/weblogic-web-app\"
    
    xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"
    
    xsi:schemaLocation=\"http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/web-app_2\_5.xsd
    http://xmlns.oracle.com/weblogic/weblogic-web-app
    http://xmlns.oracle.com/weblogic/weblogic-web-app/1.3/weblogic-web-app.xsd\"\>
    
    \<wls:context-root\>digx\</wls:context-root\>
    
    \<wls:library-ref\>
    
    \<wls:library-name\>jax-rs\</wls:library-name\>
    
    \<wls:specification-version\>2.0\</wls:specification-version\>
    
    \<wls:exact-match\>true\</wls:exact-match\>
    
    \</wls:library-ref\>
    
    \<security-role-assignment\>
    
    \<role-name\>valid-users\</role-name\>
    
    \<principal-name\>users\</principal-name\>
    
    \</security-role-assignment\>
    
    \<session-descriptor\>
    
    \<max-save-post-size\>10240\</max-save-post-size\>
    
    \<persistent-store-type\>memory\</persistent-store-type\>
    
    \<sharing-enabled\>true\</sharing-enabled\>
    
    \<cookies-enabled\>true\</cookies-enabled\>
    
    \<cookie-name\>JSESSIONID\</cookie-name\>
    
    \<cookie-domain\>\</cookie-domain\>
    
    \<cookie-path\>/\</cookie-path\>
    
    \<cookie-secure\>false\</cookie-secure\>
    
    \<url-rewriting-enabled\>true\</url-rewriting-enabled\>
    
    \</session-descriptor\>
    
    \<wls:session-descriptor\>
    
    \<wls:persistent-store-type\>replicated_if_clustered\</wls:persistent-store-type\>
    
    \</wls:session-descriptor\>
    
    \</wls:weblogic-web-app\>
    
  4. Configurez les paramètres suivants dans obdx.conf.

    1. Dans En-tête, définissez X-Frame-Options "ALLOW-FROM", ajoutez l'URL de domaine IdP comme ci-dessous.

      **Header set X-Frame-Options \"ALLOW-FROM \<IdP URL\>"

    2. <Emplacement /saml2>

      SetHandler gestionnaire weblogic

      WebLogicCluster <<HOTE du serveur géré>> :<<PORT du serveur géré>>

      </Emplacement>

Tâche 6 : déboguer SAML2

En cas de problème avec le traitement de la demande SAML2, activez les journaux suivants dans le serveur géré.

  1. Accédez à Managed Server, DebugWeblogic*, Security et activez les journaux suivants.

    • atn

    • atz

    • saml

    • saml2

Les détails d'erreur/d'exception seront consignés dans les journaux du serveur géré. Vous pouvez désactiver ces journaux si nécessaire.

Remarque : pour configurer plusieurs partenaires de fournisseur d'identités, répétez les étapes mentionnées à la section 5. Créez une copie supplémentaire de dashboard.jsp avec un autre nom configuré dans la section Redirect URIs.

Accusés de réception

Ressources de formation supplémentaires

Explorez d'autres ateliers sur docs.oracle.com/learn ou accédez à davantage de contenu de formation gratuit sur le canal Oracle Learning YouTube. En outre, accédez à education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.

Pour consulter la documentation produit, consultez Oracle Help Center.