Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Protokol LDAP autor:Zdeněk Jonáš předmět:PSI un:A01144.

Podobné prezentace


Prezentace na téma: "Protokol LDAP autor:Zdeněk Jonáš předmět:PSI un:A01144."— Transkript prezentace:

1 Protokol LDAP autor:Zdeněk Jonáš předmět:PSI un:A01144

2 Osnova prezentace Co je to LDAP Struktura databáze LDAP Základní funkce LDAP Programování v jazyce C Ukázka v jazyce PHP Zdroje a odkazy Závěr

3 Co je to LDAP LDAP - Lightweight Directory Access Protocol Vyvinut na univerzitě Michiganu Protokol pro čtení a správu adresářových služeb. Primární využití: Získání dat o uživateli Podpora zabezpečení SSL Realizován nad TCP

4 Struktura databáze LDAP Příklad uspořádání databáze

5 Struktura databáze na ZČU

6 Program LDAP Browser

7 LDAP Browser použit na ZČU

8 Základní funkce LDAP Vyhledávání a navracení položek z adresářů Přidání nových položek Úpravu stávajících Smazání položek Přejmenování položek

9 Typy paketů LDAP Application number Application 0BindRequest 1BindResponse 2UnbindRequest 3SearchRequest 4SearchResponse 5ModifyRequest

10 Typy paketů LDAP 6ModifyResponse 7AddRequest 8AddResponse 9DelRequest 10DelResponse 11ModifyRDNRequest 12ModifyRDNResponse 13CompareRequest 14CompareResponse 15AbandonRequest

11 Programování v jazyce C Hlavičkový soubor #include Překlad nutno přeložit s parametrem: gcc ldap.c -L/usr/ldap/lib –lldap

12 Vytvoření handlu LDAP *ld; if ( (ld = ldap_init( HOSTNAME, PORT_NUMBER )) == NULL ) { perror( "ldap_init" ); return( 1 ); }

13 Anonymní připojení rc = ldap_simple_bind_s( ld, NULL, NULL ); if ( rc != LDAP_SUCCESS ) { fprintf(stderr, "ldap_simple_bind_s: %s\n", ldap_err2string(rc)); return( 1 ); }

14 Ukázka kódu v PHP $ldapServer = "ldap.zcu.cz"; $ldapPort = 389; $ldapBase = "ou=rfc2307,o=zcu,c=cz"; ## vlastni pripojeni k LDAP serveru $ds=ldap_connect($ldapServer, $ldapPort); if ($ds) { //use LDAPv3 as default to bind if (!ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) echo "Failed to set protocol version to 3";

15 Ukázka kódu v PHP //anonymous bind $r=ldap_bind($ds); $ldapFilter = "uid=jonasz"; $sr=ldap_search($ds,$ldapBase,$ldapFilter); $info = ldap_get_entries($ds, $sr); print_r($info); } else { echo " Unable to connect to LDAP server "; }

16 Program ldapsearch ldapsearch -x -h ldap.zcu.cz -b 'ou=rfc2307,o=zcu,c=cz' 'uid=jonasz' memberof version: 2 # filter: uid=jonasz # requesting: memberof # jonasz, Users, rfc2307, zcu, cz dn: uid=jonasz,ou=Users,ou=rfc2307,o=zcu,c=cz memberof: cn=stud-kat-kts,ou=Groups,ou=rfc2307,o=zcu,c=cz memberof: cn=students,ou=Groups,ou=rfc2307,o=zcu,c=cz memberof: cn=stud-kat-kfi,ou=Groups,ou=rfc2307,o=zcu,c=cz … # search result search: 2 result: 0 Success # numResponses: 2 # numEntries: 1

17 Odkazy na zdroje Velmi dobré. podzim/st/ldap.html


Stáhnout ppt "Protokol LDAP autor:Zdeněk Jonáš předmět:PSI un:A01144."

Podobné prezentace


Reklamy Google