Comando search-req: Búsqueda de entradas
Contenido
cad140es
Contenido
El comando "search-req" busca entradas dentro de una partición de espacio de nombres.
El servicio de búsqueda puede devolver muchos objetos. Si la búsqueda excede un límite de tamaño o un límite de tiempo, o si el agente de usuario de directorio recibe una solicitud de abandono; la búsqueda devuelve resultados parciales, es decir, las entradas que ha recopilado antes de que se haya detenido.
La búsqueda es correcta si puede encontrar el objeto base.
La búsqueda detecta si un alias directo o indirectamente apunta a sí mismo, y devuelve un error.
El comando tiene el formato siguiente:
search-req base-object = DN [one-level-only | base-object-only | whole-subtree] [filter = { search-req-filter }] [no-info-return] [dont-search-aliases | search-aliases] [attr-only | attr-and-val] [all-attrs | attrs = attribute [,attribute...]] [common-args] ;
- base-object =nombre distintivoDefine el nombre distintivo de la entrada en la que se inicia la búsqueda. Elnombre distintivose expresa en el formato X.500.
- one-level-only | base-object-only | whole-subtree(Opcional) Especifica el alcance de la búsqueda.El valor predeterminado es base-object-only.
- {filtro de solicitudes de búsqueda}Especifica un filtro para la búsqueda. Las llaves forman parte del comando. Para obtener más información acerca de su sintaxis, consulte filtro de solicitudes de búsqueda.
- no-info-return(Opcional) Devuelve solo los nombres de las entradas que coinciden con el filtro.
- dont-search-aliases(Opcional) Especifica que search-req no debe seguir aliasedObjectname de un alias. Si no se especifica, search-req trata los alias como indicativo de las entradas.
- attrs =atributo[,atributo...](Opcional) Devuelve únicamente los atributos especificados.
Ejemplo: Búsqueda del servicio para una entrada
El ejemplo siguiente es equivalente a read-req. Recupera todos los atributos y valores de una entrada:
search-req base-object = <countryName "AU"> <organizationName "Democorp">;
Ejemplo: Búsqueda del servicio para un único nivel
El ejemplo siguiente es equivalente a list-req. Recupera los nombres de todos los objetos de un nivel por debajo de Democorp:
search-req base-object = <countryName "AU"> <organizationName "Democorp"> one-level-only no-info-return;
Ejemplo: Búsqueda del servicio para una subárbol
El ejemplo siguiente busca todas las entradas bajo Democorp, incluyendo Democorp. Recupera toda la información acerca de cada una de las entradas las entradas que contienen un apellido de atributo con el valor
Smith
:search-req base-object = <countryName "AU"> <organizationName "Democorp"> whole-subtree filter = { attr = surname value = "Smith" };
Ejemplo: Búsqueda del servicio para el árbol de directorios local
Busque en el árbol de directorios local, recupere todos los objetos que contienen un atributo de apellido con un valor de Smith y un atributo de título con el valor
Manager
, y un atributo telephoneNumber
. Recupere únicamente los atributos commonName
, surname
y telephoneNUmber
de los objetos que coinciden con el filtro de búsqueda.search-req base-object = <> whole-subtree filter = { and {attr = surname value = "Smith", attr = title substrings [ any "Manager"], attr = telephoneNumber present} } attrs = commonName, surname, telephoneNumber common-args = { local-scope };
filtro de solicitudes de búsqueda
La opción "filtro de solicitudes de búsqueda" define el filtro para el comando "search-req". El comando "search-req" utiliza el filtro para determinar si desea mostrar las entradas encontradas o excluirlas de sus resultados.
Sintaxis
Un filtro de solicitudes de búsqueda se compone de un elemento de filtro o de un número de elementos de filtro vinculados entre sí por uno de los operadores lógicos:
and
, not o
.Por consiguiente, se puede utilizar cualquiera de los formatos siguientes:
search-filter-item and {search-filter-item ,search-filter-item ...} or {search-filter-item ,search-filter-item ...} not {search-filter-item}
Las llaves ({}) en estas expresiones forman parte de la sintaxis y definen el alcance del operador.
Allí donde haya un elemento de filtro de búsqueda, se podrá reemplazar por una de las expresiones anteriores, y se podrán anidar estas expresiones indefinidamente.
- elemento de filtro de búsquedaDefine un elemento dentro del filtro de búsqueda. Tiene uno de los formatos siguientes:
Las llaves ({}) y los símbolos de barra vertical (|) de estas expresiones no forman parte del comando; se incluyen básicamente para mostrar las formas alternativas de la expresión: las llaves encierran un conjunto de alternativas y las barras verticales separan las alternativas.attr=DN present attr=DN value {= | <= | >= | ~=} attributeValue attr=DN substrings {initial | final | any} attributeValueSubStringExisten otros parámetros y operadores para estas expresiones:- =Es igual a
- <=Menor que o igual a
- >=Mayor que o igual a
- ~=Aproximadamente igual a
- attributeValueDefine un valor de atributo posible.
- attributeValueSubstringDefine una posible subcadena de un valor de atributo.
Ejemplos para LDAP solamente
Estos comandos son compatibles con LDUA, que es la versión LDAP del agente de usuario de directorio. Dado que LDUA utiliza el protocolo LDAP, tiene acceso a los controles LDAP, los cuales permiten que se modifiquen las operaciones. Por ejemplo, el comando "search" puede incluir la ordenación del lado del servidor y los resultados paginados.
Ejemplo: Búsqueda y ordenación de resultados
Busque todos los objetos bajo Democorp y recupere solo los objetos cuyo nombre común empiece por H, y ordene los objetos en orden inverso por descripción:
search-req base-object=<o Democorp> whole-subtree filter = { attr = commonName substrings [ initial h ] } attrs = commonName,description controls = { server-side-sort description reverse critical };
Ejemplo: Búsqueda y paginación de los resultados
Busque todos los objetos bajo Democorp y recupere solo los objetos que contengan un nombre común de atributo que empiece por H, y pagine los resultados:
search-req base-object=<o Democorp> whole-subtree filter = { attr = commonName substrings [ initial h ] } attrs = commonName,description controls = { simple-paged-results size = 20 critical };
Ejemplo: Búsqueda, ordenación y paginación de los resultados
Estos controles LDUA pueden utilizarse conjuntamente. Busque todos los objetos bajo Democorp y recupere solo los objetos que contengan un nombre común de atributo que empiece por H. A continuación, ordene y pagine los resultados:
search-req base-object=<o Democorp> whole-subtree filter = { attr = commonName substrings [ initial h ] } attrs = commonName,description controls = { server-side-sort commonName simple-paged-results size = 20 next-page };