Page 1 of 1

Roles con Ldap

PostPosted:Fri Jan 12, 2018 1:25 pm
by owenzarro
Buenas, tengo la version openKM comunity 6.3.4. Lo tengo configurado para validarse al iniciar sesion con ldap. pero no consigo dar distintos permisos(roles) a los grupos de ldap.
La configuracion que he hecho funcionar es esta: https://docs.openkm.com/kcenter/view/ok ... ation.html
Pero ahora nose que tengo que hacer para hacer funcionar distintos roles que no sea role_user o role_admin. ya que necesito 2 roles adicionales a estos.
Los roles los quiero hacer con grupos de ledap.
Es posible?

Re: Roles con Ldap

PostPosted:Sat Jan 13, 2018 6:05 pm
by jllort
La integracion con el AD tiene 2 partes el OpenKM.xml que es donde se hace la autentificacion propiamente en tiempo real y el listado de usuario y roles que se hace a partir de las propiedades de configuración ( esta parte esta basada en realizar una serie de consultar para obtener el listado de usuarios y roles desde el AD, si entiendes las consultas, es fácil utilizar las que te proponemos o las que a ti te convengan para sacar los grupos desde el AD ).

Te sugiero esta configuración https://docs.openkm.com/kcenter/view/ok ... roles.html

Entiendo que quieres utilizar mas roles a parte del ROLE_USER y el ROLE_ADMIN y que estos ya los tienes creados en el AD.

Re: Roles con Ldap

PostPosted:Mon Jan 22, 2018 1:22 pm
by owenzarro
jllort wrote: Sat Jan 13, 2018 6:05 pm La integracion con el AD tiene 2 partes el OpenKM.xml que es donde se hace la autentificacion propiamente en tiempo real y el listado de usuario y roles que se hace a partir de las propiedades de configuración ( esta parte esta basada en realizar una serie de consultar para obtener el listado de usuarios y roles desde el AD, si entiendes las consultas, es fácil utilizar las que te proponemos o las que a ti te convengan para sacar los grupos desde el AD ).

Te sugiero esta configuración https://docs.openkm.com/kcenter/view/ok ... roles.html

Entiendo que quieres utilizar mas roles a parte del ROLE_USER y el ROLE_ADMIN y que estos ya los tienes creados en el AD.
He seguido estos pasos y OpenKM no inicia. Da el siguiente error:
Code: Select all
ene 22, 2018 12:50:53 PM org.apache.catalina.core.ApplicationContext log
INFORMACIÓN: No Spring WebApplicationInitializer types detected on classpath
ene 22, 2018 12:50:53 PM org.apache.catalina.core.ApplicationContext log
INFORMACIÓN: Initializing Spring root WebApplicationContext
ene 22, 2018 12:50:55 PM org.apache.catalina.core.StandardContext listenerStart
GRAVE: Excepción enviando evento inicializado de contexto a instancia de escuchador de clase org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: You cannot use a spring-security-2.0.xsd or spring-security-3.0.xsd or spring-security-3.1.xsd schema with Spring Security 3.2. Please update your schema declarations to the 3.2 schema.
Offending resource: URL [file:C:/Users/d02cau/Downloads/tomcat-7.0.61/OpenKM.xml]
	at org.springframework.beans.factory.parsing.FailFastProblemReporter.fatal(FailFastProblemReporter.java:59)
	at org.springframework.beans.factory.parsing.ReaderContext.fatal(ReaderContext.java:68)
	at org.springframework.beans.factory.parsing.ReaderContext.fatal(ReaderContext.java:55)
	at org.springframework.security.config.SecurityNamespaceHandler.parse(SecurityNamespaceHandler.java:84)
	at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1438)
	at org.springframework.beans.factory.xml.BeanDefinitionParserDelegate.parseCustomElement(BeanDefinitionParserDelegate.java:1428)
	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.parseBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:195)
	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.doRegisterBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:139)
	at org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader.registerBeanDefinitions(DefaultBeanDefinitionDocumentReader.java:108)
	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.registerBeanDefinitions(XmlBeanDefinitionReader.java:493)
	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:390)
	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)
	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)
	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:174)
	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:209)
	at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:180)
	at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:125)
	at org.springframework.web.context.support.XmlWebApplicationContext.loadBeanDefinitions(XmlWebApplicationContext.java:94)
	at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:130)
	at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:451)
	at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:410)
	at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306)
	at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:112)
	at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5016)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5528)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:652)
	at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1090)
	at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1900)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Lo he solucionado cambiando:
Code: Select all
<beans:beans xmlns:beans="http://www.springframework.org/schema/beans"
             xmlns:security="http://www.springframework.org/schema/security"
             xmlns:task="http://www.springframework.org/schema/task"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://www.springframework.org/schema/beans
                                 http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                                 http://www.springframework.org/schema/security
                                 http://www.springframework.org/schema/security/spring-security-3.1.xsd
                                 http://www.springframework.org/schema/task
                                 http://www.springframework.org/schema/task/spring-task-3.1.xsd">
por:
Code: Select all
<beans:beans xmlns:beans="http://www.springframework.org/schema/beans"
             xmlns:security="http://www.springframework.org/schema/security"
             xmlns:task="http://www.springframework.org/schema/task"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xmlns:amq="http://activemq.apache.org/schema/core"
             xsi:schemaLocation="http://www.springframework.org/schema/beans
                                 http://www.springframework.org/schema/beans/spring-beans.xsd
                                 http://www.springframework.org/schema/security
                                 http://www.springframework.org/schema/security/spring-security.xsd
                                 http://www.springframework.org/schema/task
                                 http://www.springframework.org/schema/task/spring-task.xsd">
Aunque con el cambio puedo iniciar sesion. Va a dar algun problema?

Re: Roles con Ldap

PostPosted:Thu Jan 25, 2018 7:55 am
by jllort
Quitar la versión es correcto. Pero si no te autentifica es porque los datos de conexión o filtrado que estas utilizando son incorrectos. No me refiero al XML propiamente sino a los datos concretos de tu AD.