Hi Amalka, But that config contains some properties with spaces. isn't this something we need to fix? Could you please highlight what these properties are exactly?
Regards, Inosh On Thu, Jun 4, 2015 at 1:10 PM, Amalka Subasinghe <[email protected]> wrote: > Hi, > > I could see secondary domain and AD users with following config. But that > config contains some properties with spaces. isn't this something we need > to fix? > > <UserStoreManager > class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager"> > > <Property name="defaultRealmName">WSO2.ORG</Property> > <Property name="Disabled">false</Property> > * <Property name="Diabled">false</Property>* > > <Property name="kdcEnabled">false</Property> > <Property > name="ConnectionName">CN=Administrator,CN=Users,DC=wso2,DC=test</Property> > * <Property name="Connection > Name">CN=Administrator,CN=Users,DC=wso2,DC=test</Property>* > <Property name="ConnectionURL">ldaps://192.168.18.13:636</Property> > *<Property name="Connection URL">ldaps://192.168.18.13:636 > <http://192.168.18.13:636></Property>* > <Property name="ConnectionPassword">pass#word2</Property> > * <Property name="Connection Password">pass#word2</Property>* > <Property name="UserSearchBase">CN=Users,DC=wso2,DC=test</Property> > * <Property name="User Search > Base">CN=Users,DC=wso2,DC=test</Property>* > <Property name="passwordHashMethod">PLAIN_TEXT</Property> > > > * <Property name="User Search > Filter">(&(objectClass=user)(cn=?))</Property> <Property name="User > Object Class">(objectClass=user)</Property> <Property name="User Entry > Object Class">user</Property>* > <Property name="UserEntryObjectClass">user</Property> > <Property name="UserNameAttribute">cn</Property> > * <Property name="Username Attribute">cn</Property>* > <Property name="isADLDSRole">false</Property> > <Property name="userAccountControl">512</Property> > <Property name="UserNameListFilter">(objectClass=user)</Property> > <Property > name="UserNameSearchFilter">(&(objectClass=user)(cn=?))</Property> > <Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property> > <Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property> > <Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property> > <Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property> > <Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property> > <Property name="ReadGroups">true</Property> > <Property name="WriteGroups">true</Property> > <Property name="EmptyRolesAllowed">true</Property> > <Property name="GroupSearchBase">CN=Users,DC=WSO2,DC=Com</Property> > <Property name="GroupEntryObjectClass">group</Property> > <Property name="GroupNameAttribute">cn</Property> > <Property name="SharedGroupNameAttribute">cn</Property> > <Property > name="SharedGroupSearchBase">ou=SharedGroups,dc=wso2,dc=org</Property> > <Property name="SharedGroupEntryObjectClass">groups</Property> > <Property > name="SharedTenantNameListFilter">(object=organizationalUnit)</Property> > <Property name="SharedTenantNameAttribute">ou</Property> > <Property name="SharedTenantObjectClass">organizationalUnit</Property> > <Property name="MembershipAttribute">member</Property> > <Property name="GroupNameListFilter">(objectcategory=group)</Property> > <Property > name="GroupNameSearchFilter">(&(objectClass=group)(cn=?))</Property> > <Property name="UserRolesCacheEnabled">true</Property> > <Property name="Referral">follow</Property> > <Property name="BackLinksEnabled">true</Property> > <Property name="MaxRoleNameListLength">100</Property> > <Property name="MaxUserNameListLength">100</Property> > <Property name="SCIMEnabled">false</Property> > <Property name="DomainName">AD2</Property> > > </UserStoreManager> > > > On Thu, Jun 4, 2015 at 12:07 PM, Amalka Subasinghe <[email protected]> > wrote: > >> Hi, >> >> I'm trying to setup AD as secondary user store in EMM 1.1.0. >> >> When I try to create it via UI it creates the xml file as [1]. each >> property contains a space between words >> then the carbon log gives an error [2] saying "Required ConnectionURL >> property is not set at the LDAP configurations" >> Then I removed the space in between property "Connection URL" and save. >> Then carbon log gives another error [3] - "Required mandatory property >> Connection URL is not defined!" >> So I gave both "Connection URL" and "ConnectionURL" in xml file to solve >> the issue with ConnectionURL >> >> Same as above, I had to specify the same property with and without space >> to fix the errors in carbon log and there were some properties missing in >> the xml file too. had to add those manually. >> [4] shows the xml file after fixing all the errors. [missing properties >> shows in red color.] >> >> Still I can't see the Secondary user domain and users of the AD in users >> page. How can I fix this? >> >> [1] >> >> <?xml version="1.0" encoding="UTF-8"?><UserStoreManager >> class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager"> >> <Property name="*Connection Name* >> ">CN=Administrator,CN=Users,DC=wso2,DC=test</Property> >> <Property name="Connection URL">ldaps://192.168.18.13:636 >> </Property> >> <Property name="Connection Password">pass#word2</Property> >> <Property name="User Search >> Base">CN=Users,DC=wso2,DC=test</Property> >> <Property name="Diabled">false</Property> >> <Property name="User Object Class">(objectClass=user)</Property> >> <Property name="Username Attribute">cn</Property> >> <Property name="User Search >> Filter">(&(objectClass=user)(cn=?))</Property> >> <Property name="User Entry Object Class">user</Property> >> <Property name="Group Entry Object Class">group</Property> >> <Property name="Maximum User List Length">100</Property> >> <Property name="Maximum Role List Length">100</Property> >> <Property name="Enable User Role Cache">true</Property> >> <Property name="Enable SCIM">false</Property> >> <Property name="ReadGroups">true</Property> >> <Property name="Group Search >> Base">CN=Users,DC=WSO2,DC=Com</Property> >> <Property name="Group Object >> Class">(objectcategory=group)</Property> >> <Property name="Group Name Attribute">cn</Property> >> <Property name="Membership Attribute">member</Property> >> <Property name="Member Of Attribute"/> >> <Property name="Group Search >> Filter">(&(objectClass=group)(cn=?))</Property> >> <Property name="Password Hashing Algorithm">PLAIN_TEXT</Property> >> <Property name="Password RegEx (Javascript)">^[\S]{5,30}$</Property> >> <Property name="Username RegEx (Javascript)">^[\S]{3,30}$</Property> >> <Property name="Username RegEx >> (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> >> <Property name="Role Name RegEx >> (Javascript)">^[\S]{3,30}$</Property> >> <Property name="Role Name RegEx >> (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> >> <Property name="Enable Write Groups">true</Property> >> <Property name="User DN >> Pattern">uid={0},ou=Users,dc=wso2,dc=org</Property> >> <Property name="Allow Empty Roles">true</Property> >> <Property name="Default Realm Name">WSO2.ORG</Property> >> <Property name="Enable KDC">false</Property> >> <Property name="Display Name Attribute">cn</Property> >> <Property name="Is ADLDS Role">false</Property> >> <Property name="User Account Control">512</Property> >> <Property name="Referral">follow</Property> >> <Property name="Enable Back Links">true</Property> >> <Property name="DomainName">AD</Property> >> <Property name="Description"/> >> </UserStoreManager> >> >> [2] >> >> [2015-06-04 11:32:59,024] ERROR >> {org.wso2.carbon.user.core.common.AbstractUserStoreManager} - Cannot >> create org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager >> java.lang.reflect.InvocationTargetException >> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native >> Method) >> at >> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) >> at >> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >> at java.lang.reflect.Constructor.newInstance(Constructor.java:526) >> at >> org.wso2.carbon.user.core.common.AbstractUserStoreManager.createSecondaryUserStoreManager(AbstractUserStoreManager.java:3469) >> at >> org.wso2.carbon.user.core.common.AbstractUserStoreManager.addSecondaryUserStoreManager(AbstractUserStoreManager.java:3525) >> at >> org.wso2.carbon.user.core.common.UserStoreDeploymentManager.deploy(UserStoreDeploymentManager.java:65) >> at >> org.wso2.carbon.identity.user.store.configuration.deployer.UserStoreConfigurationDeployer.deploy(UserStoreConfigurationDeployer.java:58) >> at >> org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) >> at >> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807) >> at >> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) >> at >> org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377) >> at >> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) >> at >> org.apache.axis2.deployment.DeploymentEngine.loadServices(DeploymentEngine.java:135) >> at >> org.wso2.carbon.core.CarbonAxisConfigurator.loadServices(CarbonAxisConfigurator.java:464) >> at >> org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:95) >> at >> org.wso2.carbon.core.CarbonConfigurationContextFactory.createNewConfigurationContext(CarbonConfigurationContextFactory.java:65) >> at >> org.wso2.carbon.core.init.CarbonServerManager.initializeCarbon(CarbonServerManager.java:398) >> at >> org.wso2.carbon.core.init.CarbonServerManager.start(CarbonServerManager.java:219) >> at >> org.wso2.carbon.core.internal.CarbonCoreServiceComponent.activate(CarbonCoreServiceComponent.java:77) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >> at >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:606) >> at >> org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:260) >> at >> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146) >> at >> org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:347) >> at >> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620) >> at >> org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197) >> at >> org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:343) >> at >> org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222) >> at >> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107) >> at >> org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861) >> at >> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) >> at >> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) >> at >> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819) >> at >> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771) >> at >> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) >> at >> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214) >> at >> org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433) >> at >> org.eclipse.equinox.http.servlet.internal.Activator.registerHttpService(Activator.java:81) >> at >> org.eclipse.equinox.http.servlet.internal.Activator.addProxyServlet(Activator.java:60) >> at >> org.eclipse.equinox.http.servlet.internal.ProxyServlet.init(ProxyServlet.java:40) >> at >> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.init(DelegationServlet.java:38) >> at >> org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1267) >> at >> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1186) >> at >> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1081) >> at >> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5027) >> at >> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5314) >> at >> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) >> at >> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) >> at >> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) >> at java.util.concurrent.FutureTask.run(FutureTask.java:262) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >> at java.lang.Thread.run(Thread.java:745) >> Caused by: org.wso2.carbon.user.core.UserStoreException: Required >> ConnectionURL property is not set at the LDAP configurations >> at >> org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.checkRequiredUserStoreConfigurations(ReadOnlyLDAPUserStoreManager.java:214) >> at >> org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.checkRequiredUserStoreConfigurations(ReadWriteLDAPUserStoreManager.java:1682) >> at >> org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager.checkRequiredUserStoreConfigurations(ActiveDirectoryUserStoreManager.java:398) >> at >> org.wso2.carbon.user.core.ldap.ReadOnlyLDAPUserStoreManager.<init>(ReadOnlyLDAPUserStoreManager.java:133) >> at >> org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager.<init>(ReadWriteLDAPUserStoreManager.java:102) >> at >> org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager.<init>(ActiveDirectoryUserStoreManager.java:85) >> ... 56 more >> >> [3] >> >> [2015-06-04 11:35:34,128] ERROR >> {org.wso2.carbon.user.core.config.XMLProcessorUtils} - Required mandatory >> property Connection URL is not defined! >> [2015-06-04 11:35:34,129] ERROR >> {org.wso2.carbon.user.core.config.UserStoreConfigXMLProcessor} - Error >> while building user store manager from file >> org.wso2.carbon.user.core.UserStoreException: A required mandatory field >> is missing. >> at >> org.wso2.carbon.user.core.config.UserStoreConfigXMLProcessor.buildUserStoreConfiguration(UserStoreConfigXMLProcessor.java:106) >> at >> org.wso2.carbon.user.core.config.UserStoreConfigXMLProcessor.buildUserStoreConfigurationFromFile(UserStoreConfigXMLProcessor.java:70) >> at >> org.wso2.carbon.user.core.common.UserStoreDeploymentManager.deploy(UserStoreDeploymentManager.java:43) >> at >> org.wso2.carbon.identity.user.store.configuration.deployer.UserStoreConfigurationDeployer.deploy(UserStoreConfigurationDeployer.java:58) >> at >> org.apache.axis2.deployment.repository.util.DeploymentFileData.deploy(DeploymentFileData.java:136) >> at >> org.apache.axis2.deployment.DeploymentEngine.doDeploy(DeploymentEngine.java:807) >> at >> org.apache.axis2.deployment.repository.util.WSInfoList.update(WSInfoList.java:144) >> at >> org.apache.axis2.deployment.RepositoryListener.update(RepositoryListener.java:377) >> at >> org.apache.axis2.deployment.RepositoryListener.checkServices(RepositoryListener.java:254) >> at >> org.apache.axis2.deployment.RepositoryListener.startListener(RepositoryListener.java:371) >> at >> org.apache.axis2.deployment.scheduler.SchedulerTask.checkRepository(SchedulerTask.java:59) >> at >> org.apache.axis2.deployment.scheduler.SchedulerTask.run(SchedulerTask.java:67) >> at >> org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.runAxisDeployment(CarbonDeploymentSchedulerTask.java:79) >> at >> org.wso2.carbon.core.deployment.CarbonDeploymentSchedulerTask.run(CarbonDeploymentSchedulerTask.java:124) >> at >> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) >> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) >> at >> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) >> at >> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) >> at >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) >> at >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) >> at java.lang.Thread.run(Thread.java:745) >> [2015-06-04 11:35:34,129] INFO >> {org.apache.axis2.deployment.DeploymentEngine} - >> org.apache.axis2.deployment.DeploymentException: The deployment of AD.xml >> is not valid. >> >> [4] >> >> <?xml version="1.0" encoding="UTF-8"?><UserStoreManager >> class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager"> >> <Property name="Connection >> Name">CN=Administrator,CN=Users,DC=wso2,DC=test</Property> >> * <Property >> name="ConnectionName">CN=Administrator,CN=Users,DC=wso2,DC=test</Property>* >> <Property name="Connection URL">ldaps://192.168.18.13:636 >> </Property> >> * <Property name="ConnectionURL">ldaps://192.168.18.13:636 >> <http://192.168.18.13:636></Property>* >> <Property name="Connection Password">pass#word2</Property> >> * <Property name="ConnectionPassword">pass#word2</Property>* >> <Property name="User Search >> Base">CN=Users,DC=wso2,DC=test</Property> >> * <Property >> name="UserSearchBase">CN=Users,DC=wso2,DC=test</Property>* >> <Property name="Diabled">false</Property> >> <Property name="User Object Class">(objectClass=user)</Property> >> * <Property name="UserNameListFilter">(objectClass=user)</Property>* >> <Property name="Username Attribute">cn</Property> >> <Property name="UserNameAttribute">cn</Property> >> <Property name="User Search >> Filter">(&(objectClass=user)(cn=?))</Property> >> * <Property >> name="UserNameSearchFilter">(&(objectClass=user)(cn=?))</Property>* >> <Property name="User Entry Object Class">user</Property> >> * <Property name="UserEntryObjectClass">user</Property>* >> <Property name="Group Entry Object Class">group</Property> >> * <Property name="GroupEntryObjectClass">group</Property>* >> <Property name="Maximum User List Length">100</Property> >> <Property name="Maximum Role List Length">100</Property> >> <Property name="Enable User Role Cache">true</Property> >> <Property name="Enable SCIM">false</Property> >> <Property name="ReadGroups">true</Property> >> <Property name="Group Search >> Base">CN=Users,DC=WSO2,DC=Com</Property> >> * <Property >> name="GroupSearchBase">CN=Users,DC=WSO2,DC=Com</Property>* >> <Property name="Group Object >> Class">(objectcategory=group)</Property> >> * <Property >> name="GroupNameListFilter">(objectcategory=group)</Property>* >> <Property name="Group Name Attribute">cn</Property> >> <Property name="GroupNameAttribute">cn</Property> >> <Property name="Membership Attribute">member</Property> >> <Property name="MembershipAttribute">member</Property> >> <Property name="Member Of Attribute"/> >> <Property name="Group Search >> Filter">(&(objectClass=group)(cn=?))</Property> >> * <Property >> name="GroupNameSearchFilter">(&(objectClass=group)(cn=?))</Property> * >> >> <Property name="Password Hashing Algorithm">PLAIN_TEXT</Property> >> <Property name="Password RegEx (Javascript)">^[\S]{5,30}$</Property> >> <Property name="Username RegEx (Javascript)">^[\S]{3,30}$</Property> >> <Property name="Username RegEx >> (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> >> <Property name="Role Name RegEx >> (Javascript)">^[\S]{3,30}$</Property> >> <Property name="Role Name RegEx >> (Java)">[a-zA-Z0-9._-|//]{3,30}$</Property> >> <Property name="Enable Write Groups">true</Property> >> <Property name="User DN >> Pattern">uid={0},ou=Users,dc=wso2,dc=org</Property> >> <Property name="Allow Empty Roles">true</Property> >> <Property name="Default Realm Name">WSO2.ORG</Property> >> <Property name="Enable KDC">false</Property> >> <Property name="Display Name Attribute">cn</Property> >> <Property name="Is ADLDS Role">false</Property> >> <Property name="User Account Control">512</Property> >> <Property name="Referral">follow</Property> >> <Property name="Enable Back Links">true</Property> >> <Property name="DomainName">AD</Property> >> <Property name="Description"/> >> </UserStoreManager> >> >> -- >> Amalka Subasinghe >> Senior Software Engineer >> WSO2 Inc. >> Mobile: +94 77 9401267 >> > > > > -- > Amalka Subasinghe > Senior Software Engineer > WSO2 Inc. > Mobile: +94 77 9401267 > > _______________________________________________ > Dev mailing list > [email protected] > http://wso2.org/cgi-bin/mailman/listinfo/dev > > -- Inosh Perera Software Engineer, WSO2 Inc. Tel: 0785293686
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
