1 / 39

Adres ářové služby LDAP SLT2001 Skalský dvůr, 15.-18. února 2001

Adres ářové služby LDAP SLT2001 Skalský dvůr, 15.-18. února 2001. Michal Mühlpachr <michalm@nextra.cz>. Co je to adresářová služba?. Databázová aplikace používaná pro správu položek adresáře zpřístupňuje informace pro uživatele a aplikace Většinou používá architekturu klient-server

abena
Download Presentation

Adres ářové služby LDAP SLT2001 Skalský dvůr, 15.-18. února 2001

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Adresářové služby LDAPSLT2001Skalský dvůr, 15.-18. února 2001 Michal Mühlpachr<michalm@nextra.cz>

  2. Co je to adresářová služba? • Databázová aplikace používaná pro správu položek adresáře • zpřístupňuje informace pro uživatele a aplikace • Většinou používá architekturu klient-server • Může být distribuovaná • DNS je příkladem adresářové služby mapující host jména na IP adresy

  3. Co je to adresářová služba? • Globální adresářová služba zajišťuje centralizovaný sklad informací o organizaci • lidé • počítače • tiskárny • konferenční místnosti • SW • …

  4. Co je to LDAP? • Standardní protokol pro globální adresářové služby • LDAP server poskytuje služby • LDAP klient využívá služby • Začal jako TCP/IP front end k X.500 • zachovává X.500 data model • IETF standard

  5. Historie • ITU-T X.500 1985-1988 DAP • RFC 1487 (1993), v2 RFC1777 • v3 RFC2251 • podpora mezinárodních znaků Unicode UTF-8, jazykové kódy • bezpečnost (SSL, SASL) • distribuovanost (referaly) • extensibilita (např. dávkový import dat) • informace o funkcionalitě a schema

  6. LDAP model požadavky LDAPClient LDAPServer odpovědi Databáze Server přijímá na TCP portu: 389 LDAP 636 LDAP over SSL

  7. Datový model • Základní informační jednotka je záznam • Záznam je soubor atributů • Každý atribut má jméno, typ a žádnou, jednu nebo více hodnot • Typ určuje jaké druhy hodnot mohou být uloženy • ASN.1, BER, OID

  8. Datové typy • cis – case insensitive string • ces – case exact string • int – integer • bin – binary data • dn – distinguished name • tel – telephone number

  9. Třídy záznamů (objektů) • Definuje atributy (jména a typy), které záznam musí a může obsahovat • LDAP definuje standardní množinu tříd pro zajištění interoperability • person, organizationalPerson, … • country, locality, organization, organizstionalUnit, … • groupOfNames, … • …

  10. Třídy objektů • Záznam (instance) může patřit současně do více jak jedné třídy • Použitelné atributy záznamu jsou množinovým součtem tříd, do kterých záznam patří • Atributy se dělí na povinné a volitelné podle definice tříd • Definice tříd mohou být děděny

  11. Příklad třídy a záznamu Třída Záznam objectclass person requires objectclass, sn, cn allows description, seeAlso, telephoneNumber, userPassword cn: Michal Muhlpachrcn: Michal Mühlpachrcn: michalmsn: Mühlpachrsn: Muhlpachrdescription: ConsultantuserPassword: {crypt}Gb0Rdtelephonenumber: 43554 100objectclass: topobjectclass: person

  12. Adresářové schema • Atributy a objekty známé adresářovému serveru tvoří schema • Adresářové schema popisuje typ dat, která mohou být obsažena v adresáři • Schema může být rozšiřováno přidáváním nových atributů a tříd objektů

  13. Adresářový strom Záznamy jsou organizovány ve struktuře podobné stromu

  14. Hierarchie stromu a reference resource K2 account ipSubnet ipAddr locality connService router itf subItf route

  15. Namespace • Každý záznam je unikátně identifikován svým distinguished name (DN) • analogické k cestě souboru ve file systém • Jeden nebo více atributů je použito pro relative distinguished name (RDN) záznamu • DN záznamu je tvořen svým RDN a RDN svých předchůdců

  16. Namespace DN má formát seznamu čárkou oddělených dvojic atribut a hodnota o=firma ou=people RDN: ou=peopleDN: ou=people,o=firma ou=groups uid=michalm uid=test cn=provoz cn=obchod RDN: uid=michalmDN: uid=michalm,ou=people,o=firma

  17. LDAP operace • Bind, Unbind – identifikace a autentizace • Compare – porovnání hodnoty atributů • Search – nalezení záznamu • Modify – modifikace záznamu • Add – přidání záznamu • Delete – vymazání záznamu • Modify RDN – modifikace RDN nebo přesun záznamu

  18. Přístupová práva • LDAP umožňuje řídit přístup k záznamům • přístup k serveru • anonymní / user + password / user + certifikát a SK • přístup k datům • přístupová práva (search/read/write) mohou být nastavena podle větve, objektu nebo atributu • přístup může být řízen podle uživatelů, skupin, IP adres, domén

  19. Vyhledávání • Base (odkud ve stromě začít hledat) • Search string • operátory přítomnost atributu, rovnost hodnoty atributu, menší, větší, substring, „zní jako“ • skládání pomocí and, or, not a závorkování • Scope • base, one, subtree • Požadované atributy • Rychlost vyhledávání závisí na indexování

  20. Vyhledávání – Netscape address book Vyhledávání „michal“ Search filter:(cn=*michal*) Požadované atributy:cn, mail, o, telephoneNumber, l, nickname, sn, givenName

  21. Vyhledávání – Microsoft Outlook Vyhledávání „michal“ Search filter:(|(mail=michal*)(cn=michal*)(sn=michal*)) Požadované atributy:Display-name, cn, commonName, mail, otherMailBox, givenName, sn, surnaon

  22. Distribuované LDAP - referaly

  23. Replikace

  24. gq client

  25. Netscape client

  26. LDIF dn: host=debussy,ou=hosts,dc=debian,dc=org objectclass: top access: all admin: debian-admin@lists.debian.org architecture: arm c: at createtimestamp: 19990929040652Z creatorsname: uid=jgg,ou=users,dc=debian,dc=org description: ARM port machine disk: 5G [6G] distribution: potato Debian GNU/Linux host: debussy hostname: debussy.debian.org l: Wien machine: Strong Arm SA110 rev 3 memory: 64M modifiersname: uid=jgg,ou=users,dc=debian,dc=org modifytimestamp: 20010110060813Z root@debussy.debian.org …

  27. Python API #!/usr/bin/env pythonimport ldapl = ldap.open ('ldap.firma.cz', 389)l.simple_bind_s( 'uid=user,ou=people,dc=firma,dc=cz', 'password')for dn, dict in l.search_s( 'dc=firma,dc=cz', ldap.SCOPE_ONELEVEL, '(objectClass=*)', ['objectClass', 'description']): print dict['objectClass'][0], \ dict['description'][0]

  28. Použití LDAP v OS • LDAP SIA Plug-in • getpw*(), getgr*() funkce v libc • login • POP/IMAP • zcela transparentní pro uživatele • LDAP PAM • pam-ldap • nss-ldap

  29. LDAP enabled aplikace • MTA – Exim, Qmail-LDAP • Courier IMAP/POP • Apache • Zope • PHP • Netscape Navigator, mutt, Emacs, MS Explorer, MS Outlook, …

  30. OpenLDAP 2.0.x • LDAPv2 a LDAPv3, IPv4 a IPv6 • Simple Authentication and Security LayerCyrus SASL - DIGEST-MD5, EXTERNAL a GSSAPI • Access control (statický, dynamický) • Internacionalizace: Unicode a jazykové tagy • Různé DB backendy: LDBM (BerkleyDB, GDBM), shell, simple passwd file, více databází současně, … • Generické API pro moduly (SQL, …) • Threads • Replikace

  31. Proč je LDAP zajímavé? • Protokol založený na otevřených standardech • Může být distribuovaný přes různé platformy, firmu, planetu • Univerzální atribut/hodnota adresář, který je rychlý, replikovaný a spolehlivý • Škálovatelné na milióny záznamů • Centralizovaný management informací • Bezpečnost (ACL, SSL) • Mnoho API (ANSI C, shell, Python, Perl, Java, …) • Jednoduchost ale výkonnost

  32. Proč je LDAP zajímavé? • Hodně komerčních implementací • Netscape (iPlanet) Directory Server • Novell NDS • Innsoft, Lucent, IBM DSS • Oracle DB LDAP storage • Microsoft Active Directory Services • Meta directory produkty • B2B kooperace – DSML = Directory Services Markup Language • Open source OpenLDAP

  33. LDAP RFC • RFC 2251 - LDAPv3 • RFC 2252 - LDAPv3: syntaxe atributů • RFC 2253 - LDAPv3: UTF-8 reprezentace DN = Disnquished Name • RFC 2254 - reprezentace search filterů • RFC 2255 - LDAP URL format

  34. LDAP související RFC • RFC 2256 - souhrn X.500(96)User schema pro LDAPv3 • RFC 2307 – přiblížení LDAP pro použití jako Neteork Information Service • RFC 1798 connectionless LDAP • RFC 1823 The LDAP Application Program Interface

  35. URL odkazy • OpenLDAPhttp://www.openldap.org/http://www.openldap.org/faq/ • Netscape (iPlanet)http://developer.netscape.com/ • SASL - Simple Authentication and Security Layerhttp://asg.web.cmu.edu/sasl/ • OpenSSLhttp://www.openssl.org/ • DSMLhttp://www.dsml.org/ http://www.padl.com/software.html http://www.innosoft.com/ldapworld/ http://www.mozilla.org/directory/csdk.html http://www.connectathon.org/ http://www.rudedog.org/auth_ldap/ http://www.delouw.ch/linux/apache.phtml http://www.mindcraft.com/directorymark/

  36. Knihy • Mark Wilcox: Implementing LDAP ISBN 1-861002-21-1 • Tim Howes, Mark C. Smith, Gordon S. Good, Timothy A. Howes: Understanding and Deploying Ldap Directory Services Network ArchitectureISBN 1578700701 • Pete Loshin: Big Book of Lightweight Directory Access Protocol (Ldap) RfcsISBN 0124558437 • Bruce Greenblatt: Internet Directories: How to Build and Manage Applications for LDAP, DNS, and Other Directories ISBN 0-13-974452-5

  37. Diskuze Dotazy? Komentáře? Michal Mühlpachr <michalm@nextra.cz> Děkuji za pozornost

More Related