IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Portails Java Discussion :

Configuration LDAP


Sujet :

Portails Java

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 5
    Par défaut Configuration LDAP
    Bonjour à tous,

    J'essaye de configurer le [jboss-portal-2.7.1] pour qu'il arrive à fonctionner avec notre LDAP, mais j'arrive pas à échapper à une exception qui m' embête vraiment.
    J'ai édité le [ldap_identity-config.xml] comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
     
    <identity-configuration>
       <datasources>
    	   <datasource>
    		   <name>LDAP</name>
    		   <!-- -->
    		   <service-name>portal:service=Module,type=LDAPConnectionContext</service-name>
    		   <class>org.jboss.portal.identity.ldap.LDAPConnectionContext</class>
    		   <!-- -->
    		   <config>
    				<option>
    					<name>ldap</name>					
    					<value>company.com</value>						
    				</option>
    				<option>
    					<name>port</name>
    					<value>389</value>
    				</option>
    				<option>
    					<name>adminDN</name>					
    					<value>company-eduid=123,ou=people,dc=company,dc=com</value> 						
    				</option>			
    				<option>
    					<name>adminPassword</name>
    					<value>xxx</value>
    				</option>						
    			</config>
    	   </datasource>   
       </datasources>   
       <!-- -------------------------------  --> 
       <modules>	
    		<module>
    			<type>User</type>
    			<implementation>LDAP</implementation>			
    			<class>org.jboss.portal.identity.ldap.LDAPExtUserModuleImpl</class>
    			<config/>
    		</module>
    		<module>     
    			<type>Role</type>
    			<implementation>LDAP</implementation>
    			<class>org.jboss.portal.identity.ldap.LDAPExtRoleModuleImpl</class>
    			<config/>
    		</module>  
    		<module>       
    			<type>Membership</type>
    			<implementation>LDAP</implementation>
    			<config/>
    		</module>  
    		<module>      
    			<type>UserProfile</type>
    			<implementation>DELEGATING</implementation>
    			<config>
    				<option>
    					<name>ldapModuleJNDIName</name>
    					<value>java:/portal/LDAPUserProfileModule</value>
    				</option>
    			</config>
    		</module>
    		<module>
             <type>DBDelegateUserProfile</type>
             <implementation>DB</implementation>
    			<config>
    				<option>
    					<name>randomSynchronizePassword</name>
    					<value>true</value>
    				</option>
    			</config>
    		</module>
    		<module>
    			<type>LDAPDelegateUserProfile</type>
    			<implementation>LDAP</implementation>
    			<config/>
    		</module>	
       </modules>
       <!-- -------------------------------  -->
    	<options>    
    		<option-group>	
    			<group-name>common</group-name>
    			<option>
    				<name>userCtxDN</name>
    				<value>ou=People,dc=company,dc=com</value>
    			</option>
    			<option>
    				<name>userSearchFilter</name>            
    				<value><![CDATA[(&(sAMAccountName={0})(objectClass=company-person))]]></value>
    			</option>        
    			<option>
    				<name>roleCtxDN</name>
    				<value>ou=Roles,dc=company,dc=com</value>
    			</option>
    			<option>
    				<name>roleSearchFilter</name>
    				<value><![CDATA[(&((sAMAccountName={0})(o=CompanyOraganisation)))]]></value>
    			</option>
    		</option-group>
       </options>
       <!-- -------------------------------  -->
    </identity-configuration>
    J'ai également touché au fichier de synchronisation de login [login-config.xml] comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    <policy>
       <!-- For the JCR CMS -->
       <application-policy name="cms">
          <authentication>
             <login-module code="org.apache.jackrabbit.core.security.SimpleLoginModule" flag="required"/>
          </authentication>
       </application-policy>  
       <application-policy name="portal">
          <authentication>
    		 <login-module code="org.jboss.security.auth.spi.LdapExtLoginModule" flag="required">
    			<module-option name="java.naming.factory.initial">com.sun.jndi.ldap.LdapCtxFactory </module-option>
    			<module-option name="java.naming.factory.initial">com.sun.jndi.ldap.LdapCtxFactory </module-option>
    			<module-option name="java.naming.provider.url">ldap://company.com:389/ </module-option>
    			<module-option name="java.naming.security.authentication">simple</module-option>
    			<module-option name="bindDN">cn=user</module-option>
    			<module-option name="bindCredential">xxx</module-option>
    			<module-option name="baseCtxDN">ou=People,dc=company,dc=com</module-option>
    			<module-option name="baseFilter">(uid={0})</module-option>
    			<module-option name="rolesCtxDN">ou=Roles,dc=company,dc=com</module-option>
    			<module-option name="roleFilter">(member={1})</module-option>
    			<module-option name="roleAttributeID">cn</module-option>
    			<module-option name="roleRecursion">-1</module-option>
    			<module-option name="searchTimeLimit">10000</module-option>
    			<module-option name="searchScope">SUBTREE_SCOPE</module-option>
    			<module-option name="allowEmptyPasswords">false</module-option>
    		</login-module>
    		 <login-module code="org.jboss.portal.identity.auth.SynchronizingLoginModule" flag="optional">
                <module-option name="synchronizeIdentity">true</module-option>
                <module-option name="synchronizeRoles">true</module-option>
                <module-option name="additionalRole">Authenticated</module-option>
                <module-option name="defaultAssignedRole">User</module-option>
                <module-option name="userModuleJNDIName">java:/portal/UserModule</module-option>
                <module-option name="roleModuleJNDIName">java:/portal/RoleModule</module-option>
                <module-option name="membershipModuleJNDIName">java:/portal/MembershipModule</module-option>
                <module-option name="userProfileModuleJNDIName">java:/portal/UserProfileModule</module-option>        
             </login-module>       
          </authentication>
       </application-policy>
    </policy>
    Mais malheureusement, une exception apparait à chaque fois que je déploie le projet, qui est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
     
    "-- Trace au niveau de JBoss AS --"
     
    ERROR [ModuleServicesMetaData] Default module configuration isn t complete ModuleMetaData[type=User, implementation= LDAP, serviceName=null, className=org.jboss.portal.identity.ldap.LDAPExtUserModuleImpl config=org.jboss.portal.identity.metadata.config.ConfigMetaData@1b22cc7]
    WARN  [ServiceController] Problem starting service portal:service=Module,type=IdentityServiceController
    org.jboss.portal.identity.IdentityException: Error during processing default configuration file
     
    "-- Erreur au niveau browser --"
     
    HTTP Status 500 -
    type Exception report
    message
    description The server encountered an internal error () that prevented it from fulfilling this request.
    exception
    javax.servlet.ServletException: org.hibernate.HibernateException: Unable to locate current JTA transaction
    	org.jboss.portal.server.servlet.PortalServlet.service(PortalServlet.java:278)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    root cause
    org.hibernate.HibernateException: Unable to locate current JTA transaction
    ...
    Je vous remercie d'avance.
    NapSteros,

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 6
    Par défaut Xml configuration
    your ldap-identity file is invalid. You should try to remove comments (they contain special characters)

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 5
    Par défaut
    Citation Envoyé par jssteux Voir le message
    your ldap-identity file is invalid. You should try to remove comments (they contain special characters)
    The problem persists still even if I remove all comments.
    I thought of reconfiguring the portal as of the beginning.
    I followed the reference guide like the first time and that give an authentication menu but, after a page refresh, the usual exception reappears another time : "Unable to locate current JTA transaction".
    I do not really Know what I make..

    NapSteros.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 6
    Par défaut Connexion LDAP
    J'ai déployé +eurs fois des LDAP en 2.6. Ca marche bien.


    Je ne pense pas que ce soit lié au login-config, mais plutôt au ldap-identity

    Dans ce genre de cas, on fait du debug dans Eclipse. Ca permet de mieux comprendre.

    Je vous envoie un exemple de fichier qui fonctionne, si ca peut vous aider


    Jean-sébastien Steux
    Fichiers attachés Fichiers attachés

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 5
    Par défaut Interfaçage avec LDAP assuré mais..
    Citation Envoyé par jssteux Voir le message
    J'ai déployé +eurs fois des LDAP en 2.6. Ca marche bien.
    Je ne pense pas que ce soit lié au login-config, mais plutôt au ldap-identity
    Dans ce genre de cas, on fait du debug dans Eclipse. Ca permet de mieux comprendre.
    Je vous envoie un exemple de fichier qui fonctionne, si ca peut vous aider
    Merci Jean-sébastien pour ton aide.
    Enfait, le problème est partiellement résolu, c'était bien une erreur au niveau de la configuration.
    • J'ai gardé le /identity-config.xml au niveau du jboss-server
    • J'ai ajouté deux modules au niveau de login-config ( IdentityLoginModule flag="sufficient" et spi.LdapExtLoginModule flag="required")
    • J'ai désactivé le bindDNet le bindCredential parce que j ai pas le compte admin de notre LDAP pour se logger en tant anonymous.

    Actuellement, la page d'authentification s'affiche au niveau du portail, sauf que, lorsque j'entre mon uid, password system, on me répond : L'utilisateur n'existe pas ou le mot de passe est incorrect .

    Le problème c'est que j ai pas un compte admin et je peux pas crée le rôle Authenticated mentionné au niveau de la configuration. J'ai pensé alors à désactivé <module-option name="additionalRole">Authenticated</module-option> au niveau du login-config et la contourner au niveau \portal-server.war\WEB-INF\web.xml par indiquer un rôle déjà existant au niveau de notre LDAP pour les <role-name> et <role-link>.

    Donc, je sais pas si le non fonctionnement de l'authentification était à cause de mes bétises ou il y a encore qqe chose qui manquait.

    Merci une autre fois Jean-sébastien.
    NapSteros

Discussions similaires

  1. Configurer LDAP pour Subversion + Redmine
    Par yozart dans le forum Autres Solutions d'entreprise
    Réponses: 0
    Dernier message: 16/12/2010, 17h48
  2. problème configuration ldap
    Par tipié dans le forum Administration système
    Réponses: 0
    Dernier message: 24/02/2010, 11h42
  3. Configuration LDAP avec php
    Par blackmamba66 dans le forum Langage
    Réponses: 1
    Dernier message: 12/06/2009, 12h31
  4. Suppression de fichiers de configuration LDAP
    Par gcvoiron dans le forum Debian
    Réponses: 1
    Dernier message: 18/07/2008, 11h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo