2011-11-03 3 views
0

Nous développons une application d'auto-inscription.accès réservé aux utilisateurs authentifiés

Notre application permet aux utilisateurs de s'inscrire à des applications Web et est déployée sur un serveur d'applications weblogic 10.3.5. Le weblogic est connecté à un système LDAP local. Une fois que l'utilisateur s'enregistre avec notre application, nous appelons les services d'entreprise pour générer un identifiant d'utilisateur. l'activation du mot de passe, l'authentification est entièrement gérée par les services de l'entreprise. qui a également un ldap d'entreprise qui contient tous les utilisateurs de l'entreprise. L'approche fonctionne bien pour les «nouveaux utilisateurs», c'est-à-dire les utilisateurs qui ne sont pas présents dans le ldap ou le ldap local: les utilisateurs entrent leurs coordonnées et reçoivent un identifiant que nous copions dans le LDAP local une fois que l'utilisateur active leur compte.

Le cas d'utilisation auquel nous sommes confrontés en ce moment concerne la gestion des utilisateurs 'existants' qui souhaitent s'enregistrer. Ce sont des utilisateurs qui sont actuellement dans le ldap corporatif et qui souhaitent s'inscrire avec nos applications. Ils sont rejetés pendant le processus d'enregistrement normal car ils existent déjà dans le lopap coroporate. Ce que je voudrais faire est de les forcer à se connecter (simplement pour qu'ils ne s'enregistrent pas au nom de quelqu'un d'autre) et une fois qu'ils sont connectés, copiez simplement leurs données dans le LDAP local.

Le problème est que même s'ils sont authentifiés avec succès par le service d'entreprise, ils n'existent pas (encore existent) en ce qui concerne le serveur weblogic. existe-t-il un moyen d'obtenir l'ID utilisateur fourni avec le jeton d'authentification? La méthode d'authentification est SAML 1.1 L'application est une application web Java EE basée sur une servlet standard utilisant le framework struts2.

Toutes les idées seraient grandement appréciées.

Répondre

0

Dans WebLogic, vous pouvez définir plusieurs fournisseurs d'authentification et les configurer dans l'ordre dans lequel vous souhaitez que le système les utilise. Puisque vous copiez des données, vous devrez vérifier par programme l'existence du compte avant de tenter de le créer sur le serveur LDAP. Il est beaucoup plus simple d'utiliser directement le serveur LDAP externe au lieu de copier les données sur le serveur LDAP interne, ce qui vous permet de tenter de vous connecter à l'utilisateur et de créer le compte uniquement en interceptant l'exception appropriée.

Questions connexes