Hi, 
thanks for your reply. It helped me. But I have still some questions. For 
testing purposes I used the following bean. 

<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="mail" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="true" /> 
<constructor-arg type="java.lang.String" index="3" value="user.mail" /> 
</bean> 

When I set "user.mail" attribute in jetspeed (this attribute is not set in 
ldap), the "mail" attribute in ldap was created and everything was ok. But when 
I logged first time with user that had "mail" attribute in ldap - user was 
created in jetspeed database too, but user.mail attribute was not set. How can 
I make it function this way? (create attribute in jetspeed, if it's set in 
ldap) 

And what does mean value 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="true" /> 
in this case? When I set the first one to true, the mail attribute from ldap 
was deleted. When I the set second one to false, there was no synchronization 
from jetspeed to ldap. 


Thanks for your advise 
Jiri Jansky 

btw: Is somewhere more information about it? 




----- Původní zpráva ----- 
Od: "Aysegul Aydin" <[email protected]> 
Komu: "Jetspeed Users List" <[email protected]> 
Odeslané: Středa, 16. Září 2009 7:52:12 GMT +01:00 Amsterdam / Berlín / Bern / 
Řím / Stockholm / Vídeň 
Předmět: Re: store user attributes in LDAP 

Hi, 

You can configure jetspeed2.2.0 to store and retrieve attributes from LDAP 
through security-ldap.xml file. This file is located under WEB-INF/assembly 
directory of your portal project (under your Tomcat webapps directory) In this 
file, you define your LDAP entities and their attributes. For user attributes, 
take a look at the bean with id "UserDaoConfiguration". In this bean 
definition, LDAP atttributes are defined with possible mappings to jetspeed 
user entity attributes (the one that is stored in your database). Here is a 
sample configuration from our file: 

<bean id="UserDaoConfiguration" 
class="org.apache.jetspeed.security.mapping.ldap.dao.LDAPEntityDAOConfiguration"
 init-method="initialize"> 
<meta key="j2:cat" value="ldapSecurity" /> 
<property name="baseDN" value="${ldap.base}" /> 
<property name="searchDN" value="${ldap.user.searchBase}" /> 
<property name="searchFilter"> 
<bean class="org.apache.jetspeed.security.mapping.ldap.filter.SimpleFilter"> 
<constructor-arg index="0" value="(objectClass=inetOrgPerson)" /> 
</bean> 
</property> 
<property name="ldapIdAttribute" value="cn" /> 
<property name="objectClasses" 
value="inetOrgPerson,organizationalPerson,person,top" /> 
<property name="attributeDefinitions"> 
<set> 
<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="uid" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="false" /> 
<property name="required" value="true" /> 
<property name="idAttribute" value="true" /> 
</bean> 
<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="cn" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="false" /> 
<property name="required" value="true" /> 
<property name="idAttribute" value="true" /> 
</bean> 
<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="sn" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="false" /> 
<property name="required" value="true" /> 
<property name="idAttribute" value="true" /> 
</bean> 
<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="givenName" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="true" /> 
<constructor-arg type="java.lang.String" index="3" value="user.name.given" /> 
</bean> 
<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="initials" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="true" /> 
<constructor-arg type="java.lang.String" index="3" value="user.name.family" /> 
</bean> 
<bean class="org.apache.jetspeed.security.mapping.model.impl.AttributeDefImpl"> 
<constructor-arg type="java.lang.String" index="0" value="o" /> 
<constructor-arg index="1" value="false" /> 
<constructor-arg index="2" value="false" /> 
</bean> 
</set> 
</property> 
<property name="entityType" value="user" /> 
</bean> 

In this sample, pay attention to attributes named "givenName" and "initials". 
We store and retrieve "user.name.given" and "user.name.family" user attributes 
in these LDAP attributes. Here, you should keep in mind that these attributes 
will be synchronized with LDAP in every startup of your portal application. 

Hope it helps, 
Aysegul. 

Reply via email to