<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: ProcessEngineConfiguration + LdapAdapter in Alfresco Archive</title>
    <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139710#M97889</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Michael,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am new to Activiti BPM and am trying to integrate Activiti with ADS but only through activiti-standalone-context.xml configuration.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;From your above post, Do you mean that every time I create a user in LDAP, I need to manually create new entry for user in the act_id_user table as well?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &amp;amp; Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Amit&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 14 Aug 2013 10:06:57 GMT</pubDate>
    <dc:creator>sanghaviamit</dc:creator>
    <dc:date>2013-08-14T10:06:57Z</dc:date>
    <item>
      <title>ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139704#M97883</link>
      <description>Hello Activiti Community,i just want to introduce myself before asking for any help.About me:———-My name is Michael and i am c programmer ( shame on me &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; ).So i'm new to the java world. Although i can follow object oriented languages like c#,c++ and java, but i will have to spend a lot of time to</description>
      <pubDate>Fri, 12 Apr 2013 20:21:10 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139704#M97883</guid>
      <dc:creator>desperado</dc:creator>
      <dc:date>2013-04-12T20:21:10Z</dc:date>
    </item>
    <item>
      <title>Re: ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139705#M97884</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;"finally" it was very simple, not to say trivial. ( after removing some issues with my browsers, library usage and some dozens combined minor things ).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Even if this will not be a new topic to you, i want to post a simple &lt;/SPAN&gt;&lt;STRONG&gt;entry point&lt;/STRONG&gt;&lt;SPAN&gt; to get started for others. I stripped it completely down to the really&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;needed stuff (nothing else, so far…)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Files:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; * Java: Factory Class&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * Java: UserEntityManager Child Class&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * Java: LdapSetting Datastructure&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * Java: LdapAdapter&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * Configuration File: db.properties&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; * Configuration File: activiti-standalone-context.xml&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Author: Michael Hoffmann&lt;BR /&gt;//* Date&amp;nbsp; : 14.04.2013&lt;BR /&gt;//* File&amp;nbsp; : LdapUserManagerFactory.java&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;package ldap;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Dependencies&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;import org.activiti.engine.impl.interceptor.Session;&lt;BR /&gt;import org.activiti.engine.impl.interceptor.SessionFactory;&lt;BR /&gt;import org.activiti.engine.impl.persistence.entity.UserEntityManager;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Class Definition&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;public class LdapUserManagerFactory implements SessionFactory {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Member&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt; &lt;BR /&gt; private LdapSetting ldapSetting;&lt;BR /&gt; &lt;BR /&gt; LdapUserManagerFactory(LdapSetting ldapSetting)&lt;BR /&gt; { this.ldapSetting = ldapSetting; }&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Interface&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt; &lt;BR /&gt; @Override&lt;BR /&gt; public Class&amp;lt;?&amp;gt; getSessionType() &lt;BR /&gt; { return UserEntityManager.class; }&lt;BR /&gt;&lt;BR /&gt; @Override&lt;BR /&gt; public Session openSession() &lt;BR /&gt; { return new LdapUserManager(ldapSetting); }&lt;BR /&gt;&lt;BR /&gt;}&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Author: Michael Hoffmann&lt;BR /&gt;//* Date&amp;nbsp; : 14.04.2013&lt;BR /&gt;//* File&amp;nbsp; : LdapUserManager.java&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;package ldap;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Dependencies&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;import java.util.logging.Level;&lt;BR /&gt;import java.util.logging.Logger;&lt;BR /&gt;import javax.naming.NamingException;&lt;BR /&gt;import org.activiti.engine.impl.persistence.entity.UserEntityManager;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Class Definition&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;public class LdapUserManager extends UserEntityManager {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Member&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static final Logger LOGGER = &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Logger.getLogger(LdapUserManager.class.getName());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private LdapSetting ldapSetting;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private LdapAdapter ldapAdapter;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Ctor&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public LdapUserManager(LdapSetting ldapSetting)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.ldapSetting = ldapSetting;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.ldapAdapter = new LdapAdapter();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Inheritance&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; @Override&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Boolean checkPassword(String userId, String password) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOGGER.log(Level.INFO,"checking password…");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String uid = "cn=" + userId +",ou=users,ou=system";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldapSetting.setSecurityPrincipal(uid);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldapSetting.setSecurityCredential(password);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(ldapAdapter.authenticate(ldapSetting))&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldapAdapter.close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOGGER.log(Level.INFO,"LDAP authentication successful: " + uid);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (NamingException e) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { e.printStackTrace(); }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOGGER.log(Level.INFO,"LDAP authentication failed: " + uid);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return Boolean.FALSE;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Author: Michael Hoffmann&lt;BR /&gt;//* Date&amp;nbsp; : 14.04.2013&lt;BR /&gt;//* File&amp;nbsp; : LdapSetting.java&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;package ldap;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Dependencies&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;// …&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Class Definition&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;public class LdapSetting {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Member&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String ldapUrl;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String ldapPort;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String securityAuthentication;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String securityCredential;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private String securityPrincipal;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Getter&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getLdapUrl() &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { return ldapUrl; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getLdapPort() &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { return ldapPort; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getSecurityAuthentication() &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { return securityAuthentication; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getSecurityCredential() &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { return securityCredential; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getSecurityPrincipal() &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { return securityPrincipal; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Setter&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setLdapUrl(String ldapUrl) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { this.ldapUrl = ldapUrl; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setLdapPort(String ldapPort) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { this.ldapPort = ldapPort; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setSecurityAuthentication(String securityAuthentication) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { this.securityAuthentication = securityAuthentication; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setSecurityCredential(String securityCredential) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { this.securityCredential = securityCredential; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void setSecurityPrincipal(String securityPrincipal) &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { this.securityPrincipal = securityPrincipal; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Additional Getter&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getProviderUrl()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; { return ldapUrl + ":" + ldapPort; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;}&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Author: Michael Hoffmann&lt;BR /&gt;//* Date&amp;nbsp; : 14.04.2013&lt;BR /&gt;//* File&amp;nbsp; : LdapAdapter.java&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;package ldap;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Dependencies&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;import java.util.Hashtable;&lt;BR /&gt;import java.util.logging.Level;&lt;BR /&gt;import java.util.logging.Logger;&lt;BR /&gt;&lt;BR /&gt;import javax.naming.Context;&lt;BR /&gt;import javax.naming.InitialContext;&lt;BR /&gt;import javax.naming.NamingException;&lt;BR /&gt;&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;//* Class Definition&lt;BR /&gt;//******************************************************************************&lt;BR /&gt;&lt;BR /&gt;public class LdapAdapter {&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Member&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private final static String FACTORY =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; "com.sun.jndi.ldap.LdapCtxFactory";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private static final Logger LOGGER = &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Logger.getLogger(LdapAdapter.class.getName());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; private Context context;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Ldap&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //————————————————————————–&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public boolean authenticate(LdapSetting ldapSetting) throws NamingException&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOGGER.log(Level.INFO,"try to connect");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Hashtable&amp;lt;String, String&amp;gt; env = new Hashtable&amp;lt;String, String&amp;gt;();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.put(Context.INITIAL_CONTEXT_FACTORY,FACTORY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.put(Context.PROVIDER_URL,ldapSetting.getProviderUrl());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.put(Context.SECURITY_AUTHENTICATION,ldapSetting.getSecurityAuthentication());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.put(Context.SECURITY_PRINCIPAL,ldapSetting.getSecurityPrincipal());&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; env.put(Context.SECURITY_CREDENTIALS,ldapSetting.getSecurityCredential());&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; context&amp;nbsp;&amp;nbsp;&amp;nbsp; = new InitialContext(env);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOGGER.log(Level.INFO,"connected");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return context != null;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void close() throws NamingException&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; context.close();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LOGGER.log(Level.INFO,"connection closed");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp; Snippet: activiti-standalone-context.xml&lt;BR /&gt;&amp;nbsp; …&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;bean id="processEngineConfiguration" class="org.activiti.spring.SpringProcessEngineConfiguration"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;property name="dataSource" ref="dataSource" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;property name="transactionManager" ref="transactionManager" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;property name="databaseSchemaUpdate" value="true" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;lt;property name="jobExecutorActivate" value="true" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="customFormTypes"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;list&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean class="org.activiti.explorer.form.UserFormType"/&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean class="org.activiti.explorer.form.ProcessDefinitionFormType"/&amp;gt; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean class="org.activiti.explorer.form.MonthFormType"/&amp;gt;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/list&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt; &lt;BR /&gt; &amp;lt;property name="customSessionFactories"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;list&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;bean class="ldap.LdapUserManagerFactory"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;constructor-arg ref="LdapSettingBean" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/list&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/property&amp;gt;&lt;BR /&gt; &lt;BR /&gt;&amp;nbsp; &amp;lt;/bean&amp;gt;&lt;BR /&gt;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; &amp;lt;bean id="LdapSettingBean" class="ldap.LdapSetting"&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="ldapUrl" value="ldap://localhost" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="ldapPort" value="10389" /&amp;gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;property name="securityAuthentication" value="simple" /&amp;gt;&lt;BR /&gt;&amp;nbsp; &amp;lt;/bean&amp;gt; &lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; …&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;File: db.properties&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;CODE&gt;&lt;BR /&gt;db=postgresql&lt;BR /&gt;jdbc.driver=org.postgresql.Driver&lt;BR /&gt;jdbc.url=jdbc:smileytongue:ostgresql://localhost:5432/activiti&lt;BR /&gt;jdbc.username=postgres&lt;BR /&gt;jdbc.password=admin&lt;BR /&gt;&lt;/CODE&gt;&lt;BR /&gt;&lt;SPAN&gt;As already mentioned, this is just an entry point to start supporting features of the Activiti Engine with Ldap-Context.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 14 Apr 2013 22:19:13 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139705#M97884</guid>
      <dc:creator>desperado</dc:creator>
      <dc:date>2013-04-14T22:19:13Z</dc:date>
    </item>
    <item>
      <title>Re: ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139706#M97885</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for posting back on your own questions, much appreciated!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Apr 2013 09:54:38 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139706#M97885</guid>
      <dc:creator>jbarrez</dc:creator>
      <dc:date>2013-04-15T09:54:38Z</dc:date>
    </item>
    <item>
      <title>Re: ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139707#M97886</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks for your valuable information.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I tried this solution in activiti 5.12 The method "CheckPassword" return true but user not Getting in his page. After "checkPassword" retur true its authenticated with LDAP but not logged-In&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Apr 2013 06:45:09 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139707#M97886</guid>
      <dc:creator>sarkar92</dc:creator>
      <dc:date>2013-04-19T06:45:09Z</dc:date>
    </item>
    <item>
      <title>Re: ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139708#M97887</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Well, if i understand correctly what you mean you should check out the following:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;DB and LDAP must be synchonized, that means with the given source above the user must exist also in the database.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The Activiti Engine (AE) will do more operations like "findUserById" and other stuff which is not implemented. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Because of that the AE will search the authenticated user in its DB, where it may not find it, so the loggin fails. So, if you use a test database, just add your "testUser", then after the authentication the AE will loggin with that user.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Michael&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Apr 2013 07:10:57 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139708#M97887</guid>
      <dc:creator>desperado</dc:creator>
      <dc:date>2013-04-19T07:10:57Z</dc:date>
    </item>
    <item>
      <title>Re: ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139709#M97888</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Thanks &lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 19 Apr 2013 07:50:26 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139709#M97888</guid>
      <dc:creator>sarkar92</dc:creator>
      <dc:date>2013-04-19T07:50:26Z</dc:date>
    </item>
    <item>
      <title>Re: ProcessEngineConfiguration + LdapAdapter</title>
      <link>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139710#M97889</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Michael,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am new to Activiti BPM and am trying to integrate Activiti with ADS but only through activiti-standalone-context.xml configuration.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;From your above post, Do you mean that every time I create a user in LDAP, I need to manually create new entry for user in the act_id_user table as well?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &amp;amp; Regards,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Amit&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 14 Aug 2013 10:06:57 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-archive/processengineconfiguration-ldapadapter/m-p/139710#M97889</guid>
      <dc:creator>sanghaviamit</dc:creator>
      <dc:date>2013-08-14T10:06:57Z</dc:date>
    </item>
  </channel>
</rss>

