usuarios LDAP

OpenKM tiene muchas características interesantes, pero es necesario un proceso de configuración para mostrar todo su potencial.
Forum rules
Por favor, antes de preguntar algo consulta el wiki de documentación o utiliza la función de búsqueda del foro. Recuerda que no tenemos una bola de cristal ni poderes mentales, o sea que que para informar sobre un error es necesario que nos indiques tanto la versión de OpenKM que usas como la del navegador y sistema operativo. Para más información consulta Cómo informar de fallos de forma efectiva.
Post Reply
owenzarro
Fresh Boarder
Fresh Boarder
Posts: 5
Joined: Wed Nov 29, 2017 3:58 pm

usuarios LDAP

Post by owenzarro » Wed Jan 03, 2018 10:59 am

Buenas,
he conseguido configurar LDAP en OPENKM Comunity pero solo me carga 1000 usuarios cuando tengo muchos mas.
Hay algun limite? Puedo saltarme ese limite?

Un saludo y gracias de antemano

jllort
Moderator
Moderator
Posts: 9751
Joined: Fri Dec 21, 2007 11:23 am
Location: Sineu - ( Illes Balears ) - Spain
Contact:

Re: usuarios LDAP

Post by jllort » Wed Jan 03, 2018 4:25 pm

El problema lo tienes en el AD de microsoft que limita el número máximo de resultados a 1000, tienes que localizar el parámetro de configuración del AD para que te salgan más resultados. Todos los usuarios van a tener acceso a OpenKM, por que lo suyo es que sólo aparezcan aquellos que realmente van a logearse, fíjate en el ejemplo de esta sección de la documentación como estamos haciendo un filtrado por aquellos usuarios que son miembros de ROLE_USER y de ROLE_ADMIN ( https://docs.openkm.com/kcenter/view/ok ... roles.html ), estos grupos obviamente han sido creados en el AD.

owenzarro
Fresh Boarder
Fresh Boarder
Posts: 5
Joined: Wed Nov 29, 2017 3:58 pm

Re: usuarios LDAP

Post by owenzarro » Fri Jan 05, 2018 7:28 am

jllort wrote:
Wed Jan 03, 2018 4:25 pm
El problema lo tienes en el AD de microsoft que limita el número máximo de resultados a 1000, tienes que localizar el parámetro de configuración del AD para que te salgan más resultados. Todos los usuarios van a tener acceso a OpenKM, por que lo suyo es que sólo aparezcan aquellos que realmente van a logearse, fíjate en el ejemplo de esta sección de la documentación como estamos haciendo un filtrado por aquellos usuarios que son miembros de ROLE_USER y de ROLE_ADMIN ( https://docs.openkm.com/kcenter/view/ok ... roles.html ), estos grupos obviamente han sido creados en el AD.
Y no es posible hacer que openkm sepa leer esa paginacion?
Lo pregunto porque tengo otros aplicativos que si me extraen toda la informacion de LDAP sin tener que configurar el AD para que me salgan mas resultados

jllort
Moderator
Moderator
Posts: 9751
Joined: Fri Dec 21, 2007 11:23 am
Location: Sineu - ( Illes Balears ) - Spain
Contact:

Re: usuarios LDAP

Post by jllort » Sat Jan 06, 2018 9:51 am

Se tendría que modificar el LdapPrincipalAdapter, si quieres colaborar en este tema te puedo indicar la clase en cuestión que tiene que modificarse. De todas formas esto que comentas me resulta un tanto estraño, estamos hablando de aplicaciones de microsoft o de otro tipo de aplicaciones, porque el problema de fondo es que se estan realizando consultas al ldap, es decir la aplicación se conecta al ldap a través un de un determinado puerto y realiza consultas y el resultado de estas consultas esta limitado a 1000 filas y no entiendo muy bien como se puede paginar. Te invito a que te descargues una de estas dos aplicaciones y intentes hacer esto que nos estas comentando. Importante !!! mediante consultas:
http://directory.apache.org/studio/
https://docs.microsoft.com/en-us/sysint ... adexplorer

owenzarro
Fresh Boarder
Fresh Boarder
Posts: 5
Joined: Wed Nov 29, 2017 3:58 pm

Re: usuarios LDAP

Post by owenzarro » Thu Jan 11, 2018 11:17 am

jllort wrote:
Sat Jan 06, 2018 9:51 am
Se tendría que modificar el LdapPrincipalAdapter, si quieres colaborar en este tema te puedo indicar la clase en cuestión que tiene que modificarse. De todas formas esto que comentas me resulta un tanto estraño, estamos hablando de aplicaciones de microsoft o de otro tipo de aplicaciones, porque el problema de fondo es que se estan realizando consultas al ldap, es decir la aplicación se conecta al ldap a través un de un determinado puerto y realiza consultas y el resultado de estas consultas esta limitado a 1000 filas y no entiendo muy bien como se puede paginar. Te invito a que te descargues una de estas dos aplicaciones y intentes hacer esto que nos estas comentando. Importante !!! mediante consultas:
http://directory.apache.org/studio/
https://docs.microsoft.com/en-us/sysint ... adexplorer
Lo intentare. Pero yo creia que solo podian validarse los 1000 usuarios que devuelve esa consulta. Pero despues de cambiar el openkm.xml me he dado cuenta que puedo iniciar sesion con cualquier usuario del dominio. Fallo mio. pero me interesaria que me dijeras la clase que se ocupa del LDAP para hecharle un vistazo

jllort
Moderator
Moderator
Posts: 9751
Joined: Fri Dec 21, 2007 11:23 am
Location: Sineu - ( Illes Balears ) - Spain
Contact:

Re: usuarios LDAP

Post by jllort » Fri Jan 12, 2018 7:24 pm

Aqui la tienes https://github.com/openkm/document-mana ... apter.java

En el tema de los listados existen algunos parametros que podría probar a ver si tienen algun efecto, buscando por internet localize hace tiempo una sección de código interesante, pero que nunca he llegado a probar :

Code: Select all

com.sun.jndi.ldap.connect.pool.maxsize ?


if (POOL_LDAP.equalsIgnoreCase(userConfig.getLdapConnectPool())) {
		lcs.setPooled(true);
		publicEnv.put("com.sun.jndi.ldap.connect.pool.authentication", "none simple");
		if (userConfig.getLdapConnectPoolTimeout() != null && Long.valueOf(userConfig.getLdapConnectTimeout()) > 0) {
				publicEnv.put("com.sun.jndi.ldap.connect.pool.timeout", userConfig.getLdapConnectPoolTimeout());
		}
		if (userConfig.getLdapConnectPoolDebug() != null) {
				publicEnv.put("com.sun.jndi.ldap.connect.pool.debug", userConfig.getLdapConnectPoolDebug());
		}
		if (userConfig.getLdapConnectPoolInitSize() != null) {
				publicEnv.put("com.sun.jndi.ldap.connect.pool.initsize", userConfig.getLdapConnectPoolInitSize());
		}
		if (userConfig.getLdapConnectPoolMaxSize() != null) {
				publicEnv.put("com.sun.jndi.ldap.connect.pool.maxsize", userConfig.getLdapConnectPoolMaxSize());
		}
		if (userConfig.getLdapConnectPoolPrefSize() != null) {
				publicEnv.put("com.sun.jndi.ldap.connect.pool.prefsize", userConfig.getLdapConnectPoolPrefSize());
		}
}
Esto tiene que ver con los parametros que le puedes pasar a la base ( lo mismo debería ser aplicable del lado del codigo del LdapPrincipalAdapter )

Code: Select all

<beans:property name="baseEnvironmentProperties">
			 <beans:map>
					<beans:entry>
						 <beans:key>
							<beans:value>java.naming.referral</beans:value>
						</beans:key>
						<beans:value>follow</beans:value> 
					</beans:entry> 
				</beans:map>
		 </beans:property>
	</beans:bean>

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest