Skip To Content

Connexion unique

Dans cette rubrique

Configuration de la connexion unique

La connexion unique permet aux utilisateurs de se connecter une fois à une application logicielle et d'accéder aux différents systèmes logiciels sans être invité à se connecter à nouveau. Si vous configurez une connexion unique pour votre Système de gestion de contenu (CMS) ou toute autre page que vous ajoutez, les utilisateurs de votre Géoportail devront uniquement se connecter une fois pour accéder à toutes les applications activées à connexion unique.

Remarque :les instructions indiquées ci-dessous sont des suggestions quant à la manière dont SSO a été configuré lors du test. Votre organisation peut nécessiter une procédure différente en fonction de votre logiciel de conteneur de servlet, d'autres applications utilisant SSO, des règles de sécurité et d'autres considérations.

LDAP Tomcat et instructions de configuration de la connexion unique

Cette configuration de connexion unique est testée par rapport à Tomcat 5.5.17 et suppose que vous avez déjà configuré les utilisateurs via LDAP, selon le guide d'installation du Géoportail. Si vous avez configuré LDAP, continuez les étapes suivantes pour activer la connexion unique. Vous devrez apporter des modifications à votre fichier server.xml de Tomcat et à votre fichier de configuration de l'application Web du Géoportail.

  1. Modifiez le fichier server.xml de Tomcat
    • Naviguez vers le dossier <TOMCAT>\conf, puis ouvrez le fichier server.xml dans un éditeur de texte.
    • Recherchez la section où les <Realms> sont définis. Elle peut être sous l'élément <engine> ou l'élément <host> ; l'endroit où vous définissez les realms dépend des autres applications Web que vous déployez dans votre système et qui ne sont pas nécessairement associées au Géoportail. Dans l'exemple suivant, nous mettons l'élément <realm> dans <host>. Si <Realms> se trouve sous l'élément <engine>, remplacez toutes les références à <host> pour <engine> dans les instructions qui suivent. Pour plus d'informations, veuillez vous reporter à la documentation Apache Tomcat.
    • Collez l'élément <realm> suivant dans la section <host>. Assurez-vous de modifier le code pour qu'il corresponde à vos paramètres LDAP là où il est en gras. L'exemple montre les paramètres types pour Apache Directory Server:
      • connectionName : nom distingué de la connexion de l'administrateur LDAP.
      • connectionPassword : mot de passe de connexion de l'administrateur LDAP
      • connectionURL : URL de connexion LDAP
      • roleBase : élément qui est la base de la recherche pour la correspondance des rôles. L'exemple ci-dessous définit une structure où les "groupes" sont définis sous le "système" dans l'arborescence du répertoire actif.
      • roleName : nom d'attribut du rôle / groupe. Default: cn
      • roleSearch : une expression utilisée pour recherche les éléments de rôle / groupe dans le contexte roleBase. La recherche trouvera ces rôles / groupes qui contiennent un nom d'utilisateur donné, avec {0} comme espace réservé pour le nom d'utilisateur.
      • userPattern : le modèle de nom distingué pour les utilisateurs.
      <Realm
      className="org.apache.catalina.realm.JNDIRealm" 
      connectionName="uid=admin,ou=system" 
      connectionPassword="password" 
      connectionURL="ldap://myServer:10389" 
      debug="99" roleBase="ou=groups,ou=system" 
      roleName="cn" 
      roleSearch="(uniquemember={0})" 
      userPattern="cn={0},ou=users,ou=system"/>
      
    • Collez l'élément <valve> suivant également dans la section <host> :
      <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
      
    • Enregistrez le fichier.
  2. Modifiez le fichier gpt.xml du géoportail
    • Activez la connexion unique dans le fichier gpt.xml :
      • Naviguez vers le dossier <TOMCAT>\webapps\geoportal\WEB-INF\classes\gpt\config, puis ouvrez le fichier gpt.xml dans un éditeur de texte.
      • Recherchez l'élément "<singleSignOn>
      • Définissez son attribut "actif" à "vrai", comme indiqué ci-dessous :
        <singleSignOn active="true" ...
        
    • Vérifiez si dans la section <Groups> du fichier gpt.xml, le nom distingué "searchDIT" correspond au nom distingué "roleBase" spécifié dans l'élément <realm> du fichier server.xml de Tomcat que vous avez configuré plus tôt. Pour Apache Directory Server, les deux pourraient être "ou=groups,ou=system".
    • Enregistrez le fichier.
  3. Modifiez le fichier web.xml
    • Naviguez vers le dossier <TOMCAT>\webapps\geoportal\WEB-INF, puis ouvrez le fichier web.xml dans un éditeur de texte.
    • Décommentez l'élément <security-constraint> dans le fichier web.xml :
      <security-constraint>
      <web-resource-collection> 
      <web-resource-name>login</web-resource-name> 
      <description>login</description>
      <url-pattern>/catalog/identity/login.page</url-pattern>
      <http-method>GET</http-method>
      <http-method>POST</http-method>
      </web-resource-collection>
      <auth-constraint>
      <description>These are the roles who have access</description>
      <role-name>gpt_administrators</role-name>
      <role-name>gpt_publishers</role-name>
      <role-name>gpt_registeredUsers</role-name>
      </auth-constraint>
      </security-constraint>
      <login-config>
      <auth-method>FORM</auth-method>
      <realm-name>Restricted content</realm-name>
      <form-login-config>
      <form-login-page>/catalog/identity/loginJsc.page</form-login-page>
      <form-error-page>/catalog/identity/loginJsc.page?error=true</form-error-page>
      </form-login-config>
      </login-config>
      
    • Décommentez le bloc <security-role> comme ci-dessous dans le fichier web.xml :
      <security-role> 
      <role-name>gpt_administrators</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_publishers</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_registeredUsers</role-name> 
      </security-role>
      
    • Enregistrez le fichier, puis fermez-le.
    • Redémarrez Tomcat.

LDAP Weblogic et instructions de configuration de la connexion unique

Cette configuration de connexion unique est testée par rapport à Weblogic 10.3.1 et suppose que vous avez déjà configuré les utilisateurs via LDAP, selon le guide d'installation du Géoportail. Cet exemple suppose également que votre LDAP soit configuré avec Apache Directory Server. Les consignes ci-dessous peuvent devoir être ajustées pour les autres vendeurs du Serveur de répertoires. Si vous avez configuré LDAP, continuez les étapes suivantes pour activer la connexion unique. Vous devrez apporter des modifications dans la Console d'administration Weblogic vers le realm de sécurité. Pour obtenir des informations plus détaillées sur les realms de sécurité, visitez le site Web de Weblogic.

  1. Créez le Realm de sécurité
    • Connectez-vous à la Console d'administration du serveur Weblogic.
    • Cliquez sur les Realms de sécurité sous la table des matière de la structure de domaine.
    • Sélectionnez myrealm dans la table.
    • Cliquez sur l'onglet Fournisseurs.
    • Sélectionner Nouveau.
    • Saisissez le nom du fournisseur d'Authentification. (Dans cet exemple, nous utiliserons le géoportail comme nom.
    • Sélectionnez le Type dans la liste déroulante. Dans cet exemple pour Apache Directory Server, sélectionnez l'Authentificateur LDAP. Si vous utilisez un fournisseur de Serveur de répertoires différent, vous devrez sélectionner un type qui correspond à ce fournisseur.
    • Cliquez sur Ok. Le nouveau fournisseur sera ajouté à la liste des fournisseurs authentifiés.
    • Une fois que vous avez effectué ces étapes, vous devrez modifier les informations sur le nouveau fournisseur pour qu'elles correspondent à votre configuration LDAP actuelle. Cliquez sur le nouveau fournisseur.
    • Sélectionnez l'onglet Caractéristiques du fournisseur.
    Vous devrez mettre à jour certains champs avec les informations provenant de votre LDAP. Les champs non mentionnés ci-dessous doivent être laissés comme leurs valeurs par défaut. L'exemple montre les paramètres types pour Apache Directory Server:
    • Attribut de nom d'utilisateur : l'attribut d'un objet utilisateur LDAP qui spécifie le nom de l'utilisateur. default: uid.
    • Principal : le DN de l'utilisateur LDAP que Weblogic utilise pour se connecter au LDAP.
    • Exception Propager la cause pour la connexion : assurez-vous que cela est coché.
    • Hôte : le nom d'hôte ou l'adresse IP du serveur LDAP.
    • Utilisez le nom d'utilisateur récupéré comme principal : assurez-vous que cela est coché.
    • Informations d'identification : mot de passe utilisé pour se connecter au serveur LDAP.
    • Confirmer les informations d'identification : confirmation du mot de passe.
    • DN de base du groupe : le nom distingué (DN) de base de l'arborescence dans le répertoire LDAP qui contient des groupes. Remarque : écrivez cela pour une étape ultérieure.
    • DN de base de l'utilisateur : le nom distingué (DN) de base de l'arborescence dans le répertoire LDAP qui contient les utilisateurs.
    • Port : le numéro de port sur lequel le serveur LDAP écoute.
    • Cliquez sur Enregistrer.
  2. Modifiez le DefaultAuthenticator dans myrealm Weblogic a son propre fournisseur de sécurité qui protège les ressources de Weblogic, ce fournisseur est appelé DefaultAuthenticator. Vous devrez ajuster le paramètre de Drapeau de contrôle du DefaultAuthenticator.
    • Cliquez sur les Realms de sécurité sous la table des matière de la structure de domaine.
    • Sélectionnez myrealm.
    • Cliquez sur l'onglet Fournisseurs.
    • Sélectionnez le DefaultAuthenticator.
    • Sélectionnez "Suffisant" dans la liste de déroulante Drapeau de contrôle.
    • Cliquez sur Enregistrer.
  3. Modifiez le fichier gpt.xml du géoportail
    • Activez la connexion unique dans le fichier gpt.xml :
    • Naviguez vers le dossier <Geoportal Installation Dir>\geoportal\WEB-INF\classes\gpt\config, puis ouvrez le fichier gpt.xml dans un éditeur de texte.
    • Recherchez l'élément "<singleSignOn>
    • Définissez son attribut "actif" à "vrai", comme indiqué ci-dessous :
      <singleSignOn active="true" ...
      
    • Vérifiez si dans la section <Groups> du fichier gpt.xml, le nom distingué "searchDIT" correspond au DN de base du groupe que vous avez écrit plus tôt lors de la configuration du realm de sécurité. Pour Apache Directory Server, les deux pourraient être "ou=groups,ou=system".
    • Enregistrez le fichier.
  4. Modifiez le fichier web.xml
    • Naviguez vers le dossier <Geoportal Installation Dir>\geoportal\WEB-INF, puis ouvrez le fichier web.xml dans un éditeur de texte.
    • Décommentez le bloc <security-constraint> et <securityrole> dans le fichier web.xml :
      <security-constraint> 
      <web-resource-collection> 
      <web-resource-name>login</web-resource-name> 
      <description>login</description> 
      <url-pattern>/catalog/identity/login.page</url-pattern> 
      <http-method>GET</http-method> 
      <http-method>POST</http-method> 
      </web-resource-collection> 
      <auth-constraint> 
      <description>These are the roles who have access</description> 
      <role-name>gpt_administrators</role-name> 
      <role-name>gpt_publishers</role-name> 
      <role-name>gpt_registeredUsers</role-name> 
      </auth-constraint> </security-constraint> 
      <login-config> 
      <auth-method>FORM</auth-method> 
      <realm-name>myRealm</realm-name> 
      <form-login-config> 
      <form-login-page>/catalog/identity/loginJsc.page</form-login-page> 
      <form-error-page>/catalog/identity/loginJsc.page?error=true</form-error-page> 
      </form-login-config> 
      </login-config>
      
      <security-role> 
      <role-name>gpt_administrators</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_publishers</role-name> 
      </security-role> 
      <security-role> 
      <role-name>gpt_registeredUsers</role-name> 
      </security-role>
      
    • Enregistrez le fichier, puis fermez-le.
    • Redémarrez Weblogic.