Sou obrigado a usar o AD para autorização de algumas ferramentas on-line para facilitar o desenvolvimento de software em três países em uma grande empresa internacional.
A seção de ferramentas AD/LDAP possui uma linha para especificar um DN BASE e outra linha para aplicar um filtro de usuário.
O filtro de usuário padrão é: (&(objectCategory=Person)(sAMAccountName=*))
As pessoas que preciso alcançar estão localizadas nestes locais do AD:
- MinhaEmpresa.com/AAA/EMA/RS/Aarhus/Accounts
- MinhaEmpresa.com/BBB/AMR/RS/Atlanta/Accounts
- MinhaEmpresa.com/CCC/AP/COR/Xian/Accounts
Cada uma das entradas da conta contém de 4 a 5 camadas mais profundas e preciso de todas essas pessoas.
Se eu apenas definir o DN BASE comoDC=MinhaEmpresa,DC=com(que é o que acredito que deveria ser) Tenho mais de 250.000 usuários retornados, dos quais apenas cerca de 2.000 deveriam ter acesso. :-( Minhas ferramentas armazenam em cache as entradas e leva muito tempo para sincronizar. :-(
Gostaria de usar um filtro mais específico para segmentar os locais de maneira mais específica.
Eu tentei todos os tipos de coisas, pesquisei de alto a baixo e também perguntei aos desenvolvedores de ferramentas e ao nosso departamento de TI sobre como fazer isso, mas não encontrei nada que pudesse ser usado remotamente.
Acredito que o filtro deve ser algo como o seguinte - exceto que agora conheço a verificação memberOf da associação a um grupo, não um local de hierarquia no AD
(&(objectCategory=Person)(sAMAccountName=*)
(|
(memberOf:=OU=Accounts,OU=Aarhus,OU=RS,OU=EMA,OU=AAA,DC=MyCompany,DC=com)
(memberOf:=OU=Accounts,OU=Atlanta,OU=RS,OU=AMR,OU=BBB,DC=MyCompany,DC=com)
(memberOf:=OU=Accounts,OU=Xian,OU=COR,OU=AP,OU=CCC,DC=MyCompany,DC=com)
)
)
E só para esclarecer, não é possível criar (e manter atualizado) um grupo de todas as pessoas e sublocais que deveriam ter acesso.
Aguardo ansiosamente suas sugestões...
Nota: Esta é minha primeira exposição ao AD/LDAP, então provavelmente esqueci algo nesta explicação - tente preencher os espaços em branco. Obrigado.