Cómo limitar los usuarios autenticados en LDAP

cancel
Showing results for 
Search instead for 
Did you mean: 
acasado
Member II

Cómo limitar los usuarios autenticados en LDAP

Hola a todos, he instalado alfresco 3.4.c en linux y todo perfecto. He puesto la autenticación y sincronización con LDAP y FUNCIONA. Me ha cargado automáticamente los usuarios que le he dicho con "ldap.synchronization.personQuery".

El problema que tengo es que se me autentican demasiados usuarios. ¿Cómo se limitan los usuarios con un filtro? Estos usuarios están en el mismo sitio
ldap.authentication.userNameFormat=cn\=%s,cn\=Users,dc\=ual,dc\=es

Feliz año nuevo.
8 Replies
toni_delafuente
Active Member

Re: Cómo limitar los usuarios autenticados en LDAP

No se puede hacer usando un formato de búsqueda ya que el formato de autenticación debe ser por UID, pero hay una forma de hacer lo que necesitas usando búsquedas en las sincronizaciones y añadiendo el atributo de turno que quieras, por ejemplo (attributeA=enable) o el que quieras de tu esquema de LDAP.

En el subsistema de sincronización debes configurar el parámetro synchronization.autoCreatePeopleOnLogin=false. Esto significa que solo los usuarios que se sincronizan pueden hacer login. El valor por defecto de este parámetro está a true, es decir, por defecto, aunque un usuario no se haya sincronizado sí que se puede autenticar siempre que esté en el LDAP.

Por lo tanto, deberás configurar tu subsistema de autenticación y sincronización con las siguientes opciones, por ejemplo (importante usar los dos parámetros):

ldap.synchronization.personQuery=(&(objectclass\=inetOrgPerson) (attributeA=enable))
ldap.synchronization.personDifferentialQuery=(&(objectclass\=inetOrgPerson)(!(modifyTimestamp<\={0}))(attributeA=enable))

En la versión Enterprise también se puede configurar mediante JMX pero en ese caso no hay que incluir el backslash \ y recureda que en cualquier caso debes combinarlo siempre con synchronization.autoCreatePeopleOnLogin=false

Ya nos contarás los resultados. Saludos.
acasado
Member II

Re: Cómo limitar los usuarios autenticados en LDAP

Estupendo, funciona correctamente. Una duda que se me plantea ¿cual es el lugar más correcto para colocar los nuevos valores de las variables?

/tomcat/shared/classes/alfresco/extension/subsystems/Authentication/ldap/ldap1/ldap-authentication.properties
/tomcat/shared/classes/alfresco/extension/subsystems/Synchronization/default/default/default-synchronization.properties

o

/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/subsystems/Authentication/ldap/ldap1/ldap-authentication.properties
/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/extension/subsystems/Synchronization/default/default/default-synchronization.properties

Un saludo.
toni_delafuente
Active Member

Re: Cómo limitar los usuarios autenticados en LDAP

En el primero. Dentro de webapps procura no configurar/modificar nada nunca, evitaras problemas en caso de actualización, re-desplegar la aplicación, etc. Siempre fuera del war.

Saludos.
oskar201
Member II

Re: Cómo limitar los usuarios autenticados en LDAP

Hola, tengo un problema similar con la sincronizacion con ldap-ad, Uso Alfresco 4.0.2 Enterprise y llego a sincronizar mis usuarios y estos se loguean, sin embargo solo deseo que se logueen los usuarios del grupo que especifico y no todos. La configuración que tengo en el alfresco-global.properties es:

### LDAP-AD ###
authentication.chain=alfinst:alfrescoNtlm,ldap1:ldap-ad
ntlm.authentication.sso.enabled=false
ldap.authentication.active=true
ldap.authentication.allowGuestLogin=false
ldap.authentication.userNameFormat=%s@dominioprueba.com
ldap.authentication.java.naming.provider.url=ldap://192.168.1.106:389
ldap.authentication.defaultAdministratorUserNames=Administrator,alfresco
ldap.synchronization.java.naming.security.principal=Administrator@dominioprueba.com
ldap.synchronization.java.naming.security.credentials=Admin123
ldap.synchronization.groupSearchBase=CN\=GrupoDemo,cn\=Users,dc=dominioPrueba,dc=com
ldap.synchronization.userSearchBase=CN\=GrupoDemo,cn\=Users,dc=dominioPrueba,dc=com

ldap.synchronization.groupQuery=(objectclass\=group)
ldap.synchronization.groupDifferentialQuery=(&(objectclass\=group)(!(modifyTimestamp<\={0})))
ldap.synchronization.personQuery=(&(memberof=CN=GrupoDemo,CN=Users,DC=dominioPrueba,DC=com)(objectclass\=user)(userAccountControl\:1.2.840.113556.1.4.803\:\=512))
ldap.synchronization.personDifferentialQuery=(&(memberof=CN=GrupoDemo,CN=Users,DC=dominioPrueba,DC=com)(objectclass\=user)(userAccountControl\:1.2.840.113556.1.4.803\:\=512)(!(modifyTimestamp<\={0})))

ldap.synchronization.autoCreatePeopleOnLogin=false
ldap.synchronization.active=true

Todos los usuarios del ldap-ad se loguean en alfresco, pero lo que se desea es que solo los usaurios del grupo "grupoDemo" lo hagan, alguna configuracion que pueda agregar? Gracias de antemano.
miguelsan
Member II

Re: Cómo limitar los usuarios autenticados en LDAP

Para permitir el acceso de los usuarios contenidos en una unidad organizacional concreta (OU, Organizational Unit) sólo es necesario configurar la siguiente propiedad del subsistema de sincronización:


synchronization.autoCreatePeopleOnLogin=false

Es importante tener en cuenta que no es una propiedad del subsistema LDAP, por lo tanto no se debe incluir "ldap." en el nombre de la propiedad. Por tanto, indicarlo de la siguiente forma sería INCORRECTO:


ldap.synchronization.autoCreatePeopleOnLogin=false

No es necesario incluir un atributo único al filtro, lo importante es configurar con "false" la propiedad mencionada al principio (synchronization.autoCreatePeopleOnLogin)


Referencia: http://wiki.alfresco.com/wiki/The_Synchronization_Subsystem
sentocv
Member II

Re: Cómo limitar los usuarios autenticados en LDAP

He hecho los cambios que comentas pero sigue logueandose todos los usuarios del AD, no los de la rama que yo quiero únicamente…
sentocv
Member II

Re: Cómo limitar los usuarios autenticados en LDAP

Cambiando lo que comentas siguen logueandose todos los usuarios del AD, no los de una OU que quiero yo…
denis_volkmann
Member II

Re: Cómo limitar los usuarios autenticados en LDAP

Na versão 5.0d devo fazer de qual forma? Adiciono no arquivo alfresco-global.properties no caminho c:\Alfresco\tomcat\shared\classes\alfresco-global.properties?

Att
Denis