Ldap y Alfresco, cualquier usuario se loguea

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

Ldap y Alfresco, cualquier usuario se loguea

Hola a todos, es mi primer mensaje en el foro, me estoy sumando a la comunidad de alfresco.
Tengo el siguiente problema, conecte ldap zentyal a alfresco para autenticar usuarios y grupos.
Funciona perfectamente salvo por un detalle. Traigo 1 grupo con sus usuarios desde el ldap, el grupo se puebla correctamente y los usuarios del grupo se loguean. Pero sucede que usuarios fuera de este grupo tambien lo hacen (no los sincroniza al inicio por el filtro aplicado, pero se loguean igual).

Adjunto mi configuracion LDAP.

authentication.chain=alfinst:alfrescoNtlm,ldap1:ldap-ad

ntlm.authentication.sso.enabled=false

ldap.authentication.active=true
ldap.authentication.allowGuestLogin=false
ldap.authentication.userNameFormat=%s@logic.lan
ldap.authentication.java.naming.provider.url=ldap://192.168.3.145:389
ldap.authentication.defaultAdministratorUserNames=Administrator,alfresco,logic
ldap.authentication.java.naming.security.principal=CN=AlfrescoUsers,CN=Groups,DC=logic,DC=lan

#####configuraciones generales de syncronizacion######
ldap.synchronization.synchronizeChangesOnly=false
ldap.synchronization.allowDeletions=true                                                       
ldap.synchronization.attributeBatchSize=0
ldap.synchronization.modifyTimestampAttributeName=modifyTimestamp
ldap.synchronization.timestampFormat=yyyyMMddHHmmss
ldap.synchronization.groupType=group
ldap.synchronization.personType=person
ldap.synchronization.groupMemberAttributeName=member
ldap.synchronization.enableProgressEstimation=true
ldap.authentication.java.naming.read.timeout=0

ldap.synchronization.java.naming.security.principal=alfresco@logic.lan
ldap.synchronization.java.naming.security.credentials=..logic

####person querys####
ldap.synchronization.userSearchBase=cn=Users,dc=logic,dc=lan
ldap.synchronization.personQuery=(&(objectclass=user)((memberOf=CN=AlfrescoUsers,CN=Groups,DC=logic,DC=lan))(userAccountControl:1.2.840.113556.1.4.803:=512))
ldap.synchronization.personDifferentialQuery=(&(objectclass=user)((memberOf=CN=AlfrescoUsers,CN=Groups,DC=logic,DC=lan))(userAccountControl:1.2.840.113556.1.4.803:=512)(!(modifyTimestamp<\={0})))
#####################

####group query####
ldap.synchronization.groupSearchBase=cn=AlfrescoUsers,cn=Groups,dc=logic,dc=lan
ldap.synchronization.groupQuery=(&(objectclass=group)(cn=AlfrescoUsers))
ldap.synchronization.groupDifferentialQuery=(&(objectclass=group)(!(modifyTimestamp<\={0})))
###################


Alguien sabe porque pasa esto?

Gracias por su ayuda
4 Replies
angelborroy
Alfresco Employee

Re: Ldap y Alfresco, cualquier usuario se loguea

Hay propiedades de autenticación (ldap.authentication) y de sincronización (ldap.synchronization): se aplican a ámbitos diferentes.
Hyland Developer Evangelist
elliotness
Member II

Re: Ldap y Alfresco, cualquier usuario se loguea

Deberia haber una propiedad de ldap.authentication que limite esto solo a los usuarios sincronizados? me voy a poner a buscarla porque no la encontre y lei montones de configuraciones de otros usuarios.


Gracias por tu respuesta Angel.

angelborroy
Alfresco Employee

Re: Ldap y Alfresco, cualquier usuario se loguea

Prueba a deshabilitar la creación automática de usuarios. Según la versión de Alfresco que utlices, tendrás que usar estrategias diferentes: https://github.com/keensoft/disable-create-missing-people
Hyland Developer Evangelist
elliotness
Member II

Re: Ldap y Alfresco, cualquier usuario se loguea

Angel, venia por ese lado, pero como uso Alfresco 5 el archivo authentication-services-context.xml ya no existe, por ende createMissingPeople como propiedad del xml tampoco.

Pero buscando por ese lado encontre que para evitar que se loguee gente que no fue sincronizada por mi servicio de ldap tenemos que activar en ~/tomcat/shared/classes/alfresco-global.properties

create.missing.people=false

Tenia tambien estas variables seteadas pero no eran suficientes
ldap.synchronization.autoCreatePeopleOnLogin=false
ldap.synchronization.syncWhenMissingPeopleLogIn=false
ldap.synchronization.autoSyncMissingUser=false

Ahora funciona, pude permitir el ingreso solo a la gente que pertenece a un grupo ldap que es sincronzado periodicamente.

Gracias por tu asistencia!