Ticket #1325 (closed defeito: fixed)
Buscas LDAP quando o estrutura do servidor não possui OUs
Reported by: | brunocosta | Owned by: | brunocosta |
---|---|---|---|
Priority: | alta | Milestone: | Expresso 2.2 |
Component: | ExpressoMail | Version: | branch 2.2 |
Severity: | média | Keywords: | SERPRO 2.2 UNIFICA |
Cc: | WorkGroup: |
Description
nas funções get_organizations e get_organizations da classe ldap_functions adicionar sempre a entrada "todos" para que em estruturas sem nenhum OU seja possível a busca e para o usuário tenha a possibilidade de buscar em toda arvore LDAP.
Change History
comment:3 Changed 13 years ago by brunocosta
- Status changed from new to closed
- Resolution set to fixed
Resolvida na [3530]
Como descrito antes o filtro para' buscas de Organizações foi substituido de 'ou=*' para 'objectclass=organizationalunit' para que em casos que a atributo ou for usado nos usuários eles não sejam mostrados nessas buscas.
Além disso nessas buscas é tratado o caso de nenhum resultado ser encontrado para que as buscas por usuário funcionem nos LDAPs que não são organizados por organizationalunit. Em alguns casos teve que ser feito um ajuste na interface para que o resultados seja mostrado corretamente.
a resolução desse bug depende de mudar em algumas buscas LDAP por setores o filtro de ou=* para (&(ou=*)(objectclass=organizationalunit)) pois aqui no serpro e em alguns clientes todos os usuários no LDAP tem o atributo OU. Isso geralmente não causa problemas porque se faz um LdapList? e não um LdapSearch?, mas quando o diretório não é dividido por OUs isso acaba trazendo todos os usuários como organizações. Essas buscas se encomtram nos arquivos /phpgwapi/inc/class.sector_search_ldap.inc.php, /jabberit_messenger/jmessenger/inc/class.LdapIM.inc.php, /expressoAdmin1_2/inc/class.ldap_functions.inc.php, /expressoMail1_2/inc/class.ldap_functions.inc.php e /expressoAdmin1_2/inc/class.functions.inc.php
Algum de vocês tem ideia se isso vai causar efeitos colaterais em outros tipos de estruturas de LDAP? Eu tenho como testar nas nossas aqui mas não sei se existe caso de OU que não tenham o objectclass organizationalunit.