Portál AbcLinuxu, 10. května 2025 08:39

Dotaz: ldapsearch

12.3.2007 15:54 diverman | skóre: 32 | blog: život s tučňáčkem
ldapsearch
Přečteno: 446×
Odpovědět | Admin
Ahoj, uvazujme nasledujici LDAP strom:
					-------------
			  --------------| cn=states |----------
			 /		-------------	       \
			/			  		\
-----------------------						--------------------	
| cn=europe,cn=states | 					| cn=all,cn=states |
----------------------- 					--------------------
		|							|
-----------------------------------------     alias object	--------------------------------------	
| cn=czech_republic,cn=europe,cn=states | - - - - - - - - - ->> | cn=czech_republic,cn=all,cn=states |
----------------------- -----------------			--------------------------------------
Vsechny staty sveta jsou zaznamy v podstrome "cn=all,cn=states". Pak mejme podstromy tvorene jako "cn=nazevkontinentu,cn=states". Jednotlive staty maji sve aliasy v techto podstromech kontinentu. Ldapsearchem dokazu najit vsechny staty napr. v Evrope. Ted potrebuju polozit dotaz takhle: do jakeho kontinentu patri napr. Ceska republika? Poradte prosim, jak na to. Diky.
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

12.3.2007 16:29 ivan | skóre: 17 | blog: ivan
Rozbalit Rozbalit vše Re: ldapsearch
Odpovědět | | Sbalit | Link | Blokovat | Admin
Obavam se, ze to nejde. To je typ dotazu, na ktery by ti odpovedela relacni databaze ale ne LDAP. Obecne se da rict, ze LDAP dotazy jsou ekvivalentni vyrokove logice a SQL dotazy jsou ekvivalentni predikatove logice. Takze v LDAPu neni mozne zadat dotaz najdi vsechny A pro ktere Existuje B takove ze,... OpenLDAP obsahuje nejaky sileny rozhrani pro dotazy na relace.
Ted kdyz o tom premejslim tak by to vlastne slo. Diky tomu, ze to dn pro czech_republic obsahuje v jednom directory contextu slovo europe, tak muzes pouzit wildcard nad dn coz je taky nejaky experimentalni rozsireni. Treba active directory to neumi a v OpenLDAPu se to musi nejak explicitne zapnout.
Kazdopadne to bude dost pomany. OpenLDAP uklada data do ldbm databaze tak, ze v klici je prave DN a hodnota je string ktery obsahuje vsechny atributy v LDIF formatu. Jakmile zacnes pouzivat wildcardy nad DN, tak to musi delat fullscan nad celou databazi.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.