Decidindo o que encontrar
Antes de pesquisar um diretório, considere como sua pesquisa será executada com base em sua abordagem. Os dados e as propriedades a serem retornados afetam o local onde você se vincula para iniciar uma pesquisa, a profundidade da pesquisa, o filtro de consulta e o desempenho da pesquisa.
Por exemplo, se você quiser pesquisar todos os objetos de usuário com sobrenome Smith:
Área | Descrição |
---|---|
Onde pesquisar | Um contêiner ou unidade organizacional (UO) específica dentro de um domínio, um domínio específico, uma árvore de domínio específica ou a floresta inteira. Se você pesquisar objetos dentro de um contêiner ou domínio específico, a consulta de pesquisa terá um desempenho melhor vinculando-se diretamente a esse contêiner ou domínio em vez de executar uma pesquisa de subárvore em uma árvore de domínio. |
Tipo de pesquisa | Se você verificar a existência de, ou recuperar as propriedades de um objeto específico que tem um nome distinto (DN) que você já conhece, você deve executar uma pesquisa base, que pesquisa apenas o objeto que você vinculou. Se você souber que um objeto é um descendente direto de um contêiner específico, vincule-se a esse contêiner e faça uma pesquisa de um nível (objetos attributeSchema e classSchema no contêiner de esquema e objetos de direita estendida no contêiner de direitos estendidos são bons exemplos). Se você não souber exatamente onde o objeto está, ou se quiser pesquisar o objeto ao qual você vinculou e todos os objetos filho abaixo dele na hierarquia de diretórios, execute uma pesquisa de subárvore. |
Use índices sempre que possível | Finalmente, se você procurar uma classe específica de objeto, o filtro de consulta deverá ter expressões que avaliem as propriedades definidas para essa classe. Para procurar objetos de grupo, inclua a expressão (objectCategory=group) no filtro. Para procurar objetos de usuário, especifique (&(objectClass=user)(objectCategory=person)) porque a classe de computador deriva da classe de usuário, então (objectClass=user) retornaria usuários e computadores e também porque ambos os objetos de contato e de usuário têm um objectCategory de pessoa, então (objectCategory=person) retornaria usuários e contatos. Para obter mais informações, consulte Classe de objeto e Categoria de objeto e Atributos indexados. |