Hogy lehet pyldap-val egy LDAPEntry-ből megszerezni az adott entry DN-jét?

+2 votes
asked Mar 23, 2014 in IRF tantárgy by StillSilver (33 points)  

Miután egy search során megkapom listában az eredményt, szeretném lekérni az adott entry DN-jét, egy következő művelet elvégzéséhez, azonban ilyen jellegű funkciót nem találtam a pyldap API dokumentációjában. (Az LDAPDN osztály konstruktora csak stringet fogad el a doksi szerint, és én pont azt a stringet szeretném valahogy tudni)

Előre is köszi!

2 Answers

+3 votes
answered Mar 23, 2014 by att90gal (97 points)  
selected Mar 23, 2014 by StillSilver
 
Best answer

Sok szenvedés után elvileg a paraméterlista a következő:
search(baseDn, scope, filter, outAttrs, ...)
itt az outAttrs-nak egy sztringekből álló lista kell, és az "entryDN" kell ide (vagy lehet, hogy van jobb is).

commented Mar 23, 2014 by StillSilver (33 points)  
Köszi! Így már jó!
+2 votes
answered Mar 23, 2014 by nadudvarit (1,121 points)  

Az LDAPEntry objektumnak van egy dn attribútuma.

commented Mar 23, 2014 by att90gal (97 points)  
A Directory Studio szerint nincs, és azzal nem is működött.
commented Mar 23, 2014 by nadudvarit (1,121 points)  
Valami kavar van. :) Nem tudom, hogy került a képbe az Apache Directory Studio.
Én a PyLDAP modul LDAPEntry osztályról beszélek. Annak van dn attribútuma, ami LDAPDN objektumként tartalmazza a keresés során visszakapott entry dn-jét.
commented Mar 24, 2014 by att90gal (97 points)  
Próbáltam meghivatkozni, és hibát dobott rá a python interpreter, ezért néztem meg a DS-val is, ahol a fenti attribútumot találtam. A lényeg, hogy működik, nem? :D
commented Mar 24, 2014 by nadudvarit (1,121 points)  
Pontosan mit írtál az interpreterbe?
commented Mar 28, 2014 by att90gal (97 points)  
Csak most néztem ide vissza, amúgy próbáltam entry.dn-t és entry['dn']-t is, egyik sem volt jó.
commented Mar 28, 2014 by Pietro (72 points)  
Ha valóban LDAPEntry-t kapsz, akkor működnie kell a dn-attribútumnak: http://pyldap.readthedocs.org/en/latest/api.html#pyldap.LDAPEntry.dn :)
...