SlideShare une entreprise Scribd logo
1  sur  25
LDAP
(Lightweight Directory Access Protocol)
R&D AND PRESENTED BY:
S. HASNAIN RAZA
PIMSAT – KARACHI
PAKISTAN
Agenda
• Background
• Introduction to LDAP
• Directory Structure
• Distinguish Name
• Sample DIT
• Sample User Object
• Attribute and ObjectClass
• ObjectType examples
• Basic Operations of LDAP
• LDAP application
• Microsoft Active Directory
• MS Active Directory and LDAP
• MS Outlook and LDAP
Background
• Applications might interact with computers on the same local area network,
within a corporate intranet, within extranets linking up partners and
suppliers, or anywhere on the worldwide Internet.
• To improve functionality and ease-of-use, and to enable cost-effective administration of
distributed applications:
• information about the services, resources, users, and other objects accessible from the
applications needs to be organized in a clear and consistent manner.
• Much of this information can be shared among many applications.
• But it must also be protected
• Such information is often collected into a special database that is
sometimes called a directory.
Background (cont.)
What is directory?
• A directory is a specialized list that lets you quickly look up information
about the things the directory references
 At its most basic definition, a directory is any database specialized more for
reading than for writing.
 Directory server is used to maintain information about some set of entities
(entities like people or organizations), and it provides for accessing that
information
Background (cont.)
What is Protocol?
• It is a set of rules that govern the communication between the devices. Both
sender and receiver follow same protocols to communicate with each other,
Transmission Control Protocol/Internet Protocol (TCP/IP) is most widely use
protocol.
X
Introduction to LDAP
 Lightweight Directory Access Protocol, LDAP is an Internet protocol that email and
other programs use to look up information from a server
 LDAP is a protocol for accessing specialized databases called directories.
 LDAP is designed to be a standard way of providing access to directory services.
 In computer networking, LDAP is a protocol for querying and modifying directory
services running over network. Fundamentally it is a Network Protocol.
 LDAP, provides a standard language that directory client applications and directory
servers use to communicate with one another about data in directories.
Introduction to LDAP (cont.)
• A message protocol used by directory clients and servers.
• There is LDAP API to be used by C and Java programs
• With Microsoft it can by accessed via ADSI
• All modern LDAP servers are based on LDAP version 3.
• Clients and servers may or may not be on the same machine
Directory Structure
Directory Structure (cont.) LDAP architecture overview
• dn: cn=John Doe,dc=example,dc=com
• cn: John Doe
• givenName: John
• sn: Doe
• telephoneNumber: +1 555 6789
• telephoneNumber: +1 555 1234
• mail: john@example.com
• manager: cn=Barbara Doe,dc=example,dc=com
• objectClass: inetOrgPerson
• objectClass: organizationalPerson
• objectClass: person
• objectClass: top
Directory Structure (cont.)
PIMSAT
ABC Bldg, Near regent
plaza, Karachi
74000
(+92) 21-2371234
Organization Name: PIMSAT
Street Adress:ABC Bldg, Near regent plaza
City: Karachi
Province: Sind
Postal Code: 74000
Country: Pakistan
Phone Number: (+92) 21-2371234
Organization Name: PIMSAT
Street Adress: XYZ Bldg,Thandi Sarak,
City: Hyderabad
Province: Sind
Postal Code: 85123
Country: Pakistan
Phone Number: (+92) xxx-xxxxxxx
Our Institute is located in Karachi, and
another branch/campus of the
institute located in another place
Hyderabad.
How can we distinguish between
these records?
Distinguish Name
• One way of distinguishing between two very similar records is to create a
unique name for each record in the directory
• Strategy adopted by LDAP ; each record in the directory has a
distinguished name (DN).
• The DN is always indexed and will always be returned in any search.
• A DN is composed of a combination of directory information, and looks
something like this :
• dn: o=PIMSAT, l=Karachi, st=Sindh, c=PAKISTAN
• dn: o=PIMSAT, l=Hyderabad, st=Sindh, c=PAKISTAN
Distinguish Name (cont.)
• Another format of writing DN
• uid=jheiss,ou=people,dc=example,dc=com
• cn=users,ou=group,dc=example,dc=com
• Notice that the DNS name is example.com (specified by DC=Domain
Component entries) for the domain
• OU is organizational unit
• Each domain subdomain could create a tree structure in LDAP
(engr.example.com, sales.example.com, pre.engr.example.com,
support.engr.example.com, etc)
Sample DIT (Directory Information Tree)
 Branched by agency
 Agencies in this example have branches containing:
 Groups which contain people
 People in the organization
 Resources such as printers and conference rooms
 Applications (where application specific info. could be maintained)
Sample NewYork Directory Information Tree
ou=DOH
cn=OFT Administrators
cn=Ethics App Users
cn=Ethics AppAdministrators
ou=Groups
uid=bdigman
uid=jnortrup
uid=dstrazzeri
ou=People
cn=1B Floor Postscript Printer
cn=Conference Room 1B-A
ou=Resources
cn=OFT Portal
cn=Ethics Application
ou=Applications
ou=OFT ou=TAX
o=NY,c=US
Sample User Object
• Objects contain attributes, e.g.,
• uid (user ID)
• cn (common name)
• sn (surname)
• mail (e-mail address)
• Attributes can be multi-valued, e.g.,
givenname of both James and Jim
• This object contains
• white-pages information
• X.509 certificate for PKI
Sample User Object
uid=jnortrup
cn: Jim Nortrup
cn: James Nortrup
givenname: Jim
givenname: James
sn: Nortrup
mail: jnort@oft.state.ny.us
ou: NYSOFT
telephonenumber: 518-402-2018
facsimiletelephonenumber: 518-457-2019
streetaddress:
NYSOFT$Executive Chamber, State Capitol
usercertificate: X.509 Certificate
dn: uid=jnortrup,ou=People,ou=NYSOFT,o=NY,c=US
Attributes and ObjectClass
• Attributes hold the data for an entry.
• A commonly used attribute is "objectClass".
• Each record represents an object, and the attributes associated with that
object are defined according to it's objectClass
• The value of the objectClass attribute.
Object Type examples
• Examples of objectClass:
• organization (needs a name and address)
• person (needs name, email, phone & address)
• course (needs a CRN, instructor, mascot)
• cookie (needs name, cost & taste index)
Basic Operations of LDAP
 Bind - authenticate, and specify LDAP protocol version,
 Start TLS - protect the connection with Transport Layer Security (TLS), to have a more
secure connection,
 Search - search for and/or retrieve directory entries,
 Compare - test if a named entry contains a given attribute value,
 Add a new entry,
 Delete/ Modify an entry,
 Modify DN - move or rename an entry,
 Abandon - abort a previous request,
 Extended Operation - generic operation used to define other operations,
Enough LDAP!!!!!!
OK Fine We understood LDAP and the LDAP server
(directory) but where do we use it????
LDAP Application
• MicrosoftActive Directory
• Oracle Internet Directory
• Oracle Unified Directory
• Oracle Directory Server Enterprise Edition
• Apache Directory Server
• IBMTivoli Directory Server
• Red Hat Directory Server
Microsoft Active Directory
• Active Directory is Microsoft's trademarked directory service, an integral
part of theWindows 2000 architecture. Like other directory services, such
as Novell Directory Services (NDS), Active Directory is a centralized and
standardized system that automates network management of user data,
security, and distributed resources, and enables interoperation with other
directories. Active Directory is designed especially for distributed
networking environments.
Microsoft Active Directory (cont.)
MS Active Directory and LDAP
MS Active Directory and LDAP (config)
MS Outlook and LDAP (Bonus Example)
THANKYOU!
QUESTIONS?

Contenu connexe

Tendances

Microsoft Active Directory
Microsoft Active DirectoryMicrosoft Active Directory
Microsoft Active Directory
thebigredhemi
 
Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02
gameaxt
 
Active directory
Active directory Active directory
Active directory
deshvikas
 
02-Active Directory Domain Services.pptx
02-Active Directory Domain Services.pptx02-Active Directory Domain Services.pptx
02-Active Directory Domain Services.pptx
AdiWidyanto2
 
active-directory-domain-services
active-directory-domain-servicesactive-directory-domain-services
active-directory-domain-services
202066
 
Remote access service
Remote access serviceRemote access service
Remote access service
Apoorw Pandey
 

Tendances (20)

Ldap
LdapLdap
Ldap
 
Microsoft Active Directory
Microsoft Active DirectoryMicrosoft Active Directory
Microsoft Active Directory
 
Active Directory
Active Directory Active Directory
Active Directory
 
Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02Microsoft Offical Course 20410C_02
Microsoft Offical Course 20410C_02
 
Active directory
Active directory Active directory
Active directory
 
02-Active Directory Domain Services.pptx
02-Active Directory Domain Services.pptx02-Active Directory Domain Services.pptx
02-Active Directory Domain Services.pptx
 
Filepermissions in linux
Filepermissions in linuxFilepermissions in linux
Filepermissions in linux
 
DHCP
DHCPDHCP
DHCP
 
Microsoft Active Directory.pptx
Microsoft Active Directory.pptxMicrosoft Active Directory.pptx
Microsoft Active Directory.pptx
 
Active directory and application
Active directory and applicationActive directory and application
Active directory and application
 
Active Directory Domain Services.pptx
Active Directory Domain Services.pptxActive Directory Domain Services.pptx
Active Directory Domain Services.pptx
 
Active directory slides
Active directory slidesActive directory slides
Active directory slides
 
Active Directory
Active DirectoryActive Directory
Active Directory
 
active-directory-domain-services
active-directory-domain-servicesactive-directory-domain-services
active-directory-domain-services
 
What is active directory
What is active directoryWhat is active directory
What is active directory
 
Active-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptxActive-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptx
 
Active Directory Training
Active Directory TrainingActive Directory Training
Active Directory Training
 
MCSA 70-412 Chapter 06
MCSA 70-412 Chapter 06MCSA 70-412 Chapter 06
MCSA 70-412 Chapter 06
 
Remote access service
Remote access serviceRemote access service
Remote access service
 
Samba server configuration
Samba server configurationSamba server configuration
Samba server configuration
 

En vedette

LDAP Presentation
LDAP PresentationLDAP Presentation
LDAP Presentation
cyberleon95
 
Flexible Symmetric Global Snapshot
Flexible Symmetric Global Snapshot Flexible Symmetric Global Snapshot
Flexible Symmetric Global Snapshot
Ashutosh Jaiswal
 
Naming And Binding (Distributed computing)
Naming And Binding (Distributed computing)Naming And Binding (Distributed computing)
Naming And Binding (Distributed computing)
Sri Prasanna
 
Aras PLM and the Google Mobile Explosion
Aras PLM and the Google Mobile ExplosionAras PLM and the Google Mobile Explosion
Aras PLM and the Google Mobile Explosion
Aras
 
network filesystem briefs
network filesystem briefsnetwork filesystem briefs
network filesystem briefs
bergwolf
 
Day 2 global_state_and_snapshot_algorithms
Day 2 global_state_and_snapshot_algorithmsDay 2 global_state_and_snapshot_algorithms
Day 2 global_state_and_snapshot_algorithms
VI Ni
 
Posix threads(asha)
Posix threads(asha)Posix threads(asha)
Posix threads(asha)
Nagarajan
 

En vedette (19)

LDAP Theory
LDAP TheoryLDAP Theory
LDAP Theory
 
LDAP Presentation
LDAP PresentationLDAP Presentation
LDAP Presentation
 
Ldap
LdapLdap
Ldap
 
How to Improve RACF Performance (v0.2 - 2016)
How to Improve RACF Performance (v0.2 - 2016)How to Improve RACF Performance (v0.2 - 2016)
How to Improve RACF Performance (v0.2 - 2016)
 
Distributed computing time
Distributed computing timeDistributed computing time
Distributed computing time
 
Flexible Symmetric Global Snapshot
Flexible Symmetric Global Snapshot Flexible Symmetric Global Snapshot
Flexible Symmetric Global Snapshot
 
Distributed Snapshots
Distributed SnapshotsDistributed Snapshots
Distributed Snapshots
 
Naming And Binding (Distributed computing)
Naming And Binding (Distributed computing)Naming And Binding (Distributed computing)
Naming And Binding (Distributed computing)
 
RACF - The Basics (v1.2)
RACF - The Basics (v1.2)RACF - The Basics (v1.2)
RACF - The Basics (v1.2)
 
Aras PLM and the Google Mobile Explosion
Aras PLM and the Google Mobile ExplosionAras PLM and the Google Mobile Explosion
Aras PLM and the Google Mobile Explosion
 
How to import the agile plm database
How to import the agile plm databaseHow to import the agile plm database
How to import the agile plm database
 
network filesystem briefs
network filesystem briefsnetwork filesystem briefs
network filesystem briefs
 
Global state recording in Distributed Systems
Global state recording in Distributed SystemsGlobal state recording in Distributed Systems
Global state recording in Distributed Systems
 
Day 2 global_state_and_snapshot_algorithms
Day 2 global_state_and_snapshot_algorithmsDay 2 global_state_and_snapshot_algorithms
Day 2 global_state_and_snapshot_algorithms
 
Posix threads(asha)
Posix threads(asha)Posix threads(asha)
Posix threads(asha)
 
1208 1450 how digital transformation affects plm pi berlin 2017
1208 1450 how digital transformation affects plm   pi berlin 20171208 1450 how digital transformation affects plm   pi berlin 2017
1208 1450 how digital transformation affects plm pi berlin 2017
 
Oracle Database Management Basic 1
Oracle Database Management Basic 1Oracle Database Management Basic 1
Oracle Database Management Basic 1
 
Distributed Systems Naming
Distributed Systems NamingDistributed Systems Naming
Distributed Systems Naming
 
Coda file system tahir
Coda file system   tahirCoda file system   tahir
Coda file system tahir
 

Similaire à LDAP - Lightweight Directory Access Protocol

Ldap system administration
Ldap system administrationLdap system administration
Ldap system administration
Ali Abdo
 

Similaire à LDAP - Lightweight Directory Access Protocol (20)

Directory services by SAJID
Directory services by SAJIDDirectory services by SAJID
Directory services by SAJID
 
Ldap system administration
Ldap system administrationLdap system administration
Ldap system administration
 
Directory Introduction
Directory IntroductionDirectory Introduction
Directory Introduction
 
X.500 More Than a Global Directory
X.500 More Than a Global DirectoryX.500 More Than a Global Directory
X.500 More Than a Global Directory
 
Directory Servers and LDAP
Directory Servers and LDAPDirectory Servers and LDAP
Directory Servers and LDAP
 
Directory services by SAJID
Directory services by SAJIDDirectory services by SAJID
Directory services by SAJID
 
Active directory
Active directoryActive directory
Active directory
 
CIS13: A Breakthrough in Directory Technology: Meet the Elephant in the Room ...
CIS13: A Breakthrough in Directory Technology: Meet the Elephant in the Room ...CIS13: A Breakthrough in Directory Technology: Meet the Elephant in the Room ...
CIS13: A Breakthrough in Directory Technology: Meet the Elephant in the Room ...
 
Directory services
Directory servicesDirectory services
Directory services
 
Using OpenLDAP
Using OpenLDAPUsing OpenLDAP
Using OpenLDAP
 
Infromation Reprentation, Structured Data and Semantics
Infromation Reprentation,Structured Data and SemanticsInfromation Reprentation,Structured Data and Semantics
Infromation Reprentation, Structured Data and Semantics
 
LDAP
LDAPLDAP
LDAP
 
User administration without you - integrating LDAP
User administration without you - integrating LDAPUser administration without you - integrating LDAP
User administration without you - integrating LDAP
 
Active-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptxActive-Directory-Domain-Services.pptx
Active-Directory-Domain-Services.pptx
 
Security and LDAP integration in InduSoft Web Studio
Security and LDAP integration in InduSoft Web StudioSecurity and LDAP integration in InduSoft Web Studio
Security and LDAP integration in InduSoft Web Studio
 
ADDS (Active directory Domain Service) in side server
ADDS (Active directory Domain Service) in side serverADDS (Active directory Domain Service) in side server
ADDS (Active directory Domain Service) in side server
 
Directory Services Nma Unit-1
Directory Services Nma Unit-1Directory Services Nma Unit-1
Directory Services Nma Unit-1
 
Active directoryfinal
Active directoryfinalActive directoryfinal
Active directoryfinal
 
09 - Active Directory.ppt
09 - Active Directory.ppt09 - Active Directory.ppt
09 - Active Directory.ppt
 
LDAP
LDAPLDAP
LDAP
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

LDAP - Lightweight Directory Access Protocol

  • 1. LDAP (Lightweight Directory Access Protocol) R&D AND PRESENTED BY: S. HASNAIN RAZA PIMSAT – KARACHI PAKISTAN
  • 2. Agenda • Background • Introduction to LDAP • Directory Structure • Distinguish Name • Sample DIT • Sample User Object • Attribute and ObjectClass • ObjectType examples • Basic Operations of LDAP • LDAP application • Microsoft Active Directory • MS Active Directory and LDAP • MS Outlook and LDAP
  • 3. Background • Applications might interact with computers on the same local area network, within a corporate intranet, within extranets linking up partners and suppliers, or anywhere on the worldwide Internet. • To improve functionality and ease-of-use, and to enable cost-effective administration of distributed applications: • information about the services, resources, users, and other objects accessible from the applications needs to be organized in a clear and consistent manner. • Much of this information can be shared among many applications. • But it must also be protected • Such information is often collected into a special database that is sometimes called a directory.
  • 4. Background (cont.) What is directory? • A directory is a specialized list that lets you quickly look up information about the things the directory references  At its most basic definition, a directory is any database specialized more for reading than for writing.  Directory server is used to maintain information about some set of entities (entities like people or organizations), and it provides for accessing that information
  • 5. Background (cont.) What is Protocol? • It is a set of rules that govern the communication between the devices. Both sender and receiver follow same protocols to communicate with each other, Transmission Control Protocol/Internet Protocol (TCP/IP) is most widely use protocol. X
  • 6. Introduction to LDAP  Lightweight Directory Access Protocol, LDAP is an Internet protocol that email and other programs use to look up information from a server  LDAP is a protocol for accessing specialized databases called directories.  LDAP is designed to be a standard way of providing access to directory services.  In computer networking, LDAP is a protocol for querying and modifying directory services running over network. Fundamentally it is a Network Protocol.  LDAP, provides a standard language that directory client applications and directory servers use to communicate with one another about data in directories.
  • 7. Introduction to LDAP (cont.) • A message protocol used by directory clients and servers. • There is LDAP API to be used by C and Java programs • With Microsoft it can by accessed via ADSI • All modern LDAP servers are based on LDAP version 3. • Clients and servers may or may not be on the same machine
  • 9. Directory Structure (cont.) LDAP architecture overview • dn: cn=John Doe,dc=example,dc=com • cn: John Doe • givenName: John • sn: Doe • telephoneNumber: +1 555 6789 • telephoneNumber: +1 555 1234 • mail: john@example.com • manager: cn=Barbara Doe,dc=example,dc=com • objectClass: inetOrgPerson • objectClass: organizationalPerson • objectClass: person • objectClass: top
  • 10. Directory Structure (cont.) PIMSAT ABC Bldg, Near regent plaza, Karachi 74000 (+92) 21-2371234 Organization Name: PIMSAT Street Adress:ABC Bldg, Near regent plaza City: Karachi Province: Sind Postal Code: 74000 Country: Pakistan Phone Number: (+92) 21-2371234 Organization Name: PIMSAT Street Adress: XYZ Bldg,Thandi Sarak, City: Hyderabad Province: Sind Postal Code: 85123 Country: Pakistan Phone Number: (+92) xxx-xxxxxxx Our Institute is located in Karachi, and another branch/campus of the institute located in another place Hyderabad. How can we distinguish between these records?
  • 11. Distinguish Name • One way of distinguishing between two very similar records is to create a unique name for each record in the directory • Strategy adopted by LDAP ; each record in the directory has a distinguished name (DN). • The DN is always indexed and will always be returned in any search. • A DN is composed of a combination of directory information, and looks something like this : • dn: o=PIMSAT, l=Karachi, st=Sindh, c=PAKISTAN • dn: o=PIMSAT, l=Hyderabad, st=Sindh, c=PAKISTAN
  • 12. Distinguish Name (cont.) • Another format of writing DN • uid=jheiss,ou=people,dc=example,dc=com • cn=users,ou=group,dc=example,dc=com • Notice that the DNS name is example.com (specified by DC=Domain Component entries) for the domain • OU is organizational unit • Each domain subdomain could create a tree structure in LDAP (engr.example.com, sales.example.com, pre.engr.example.com, support.engr.example.com, etc)
  • 13. Sample DIT (Directory Information Tree)  Branched by agency  Agencies in this example have branches containing:  Groups which contain people  People in the organization  Resources such as printers and conference rooms  Applications (where application specific info. could be maintained) Sample NewYork Directory Information Tree ou=DOH cn=OFT Administrators cn=Ethics App Users cn=Ethics AppAdministrators ou=Groups uid=bdigman uid=jnortrup uid=dstrazzeri ou=People cn=1B Floor Postscript Printer cn=Conference Room 1B-A ou=Resources cn=OFT Portal cn=Ethics Application ou=Applications ou=OFT ou=TAX o=NY,c=US
  • 14. Sample User Object • Objects contain attributes, e.g., • uid (user ID) • cn (common name) • sn (surname) • mail (e-mail address) • Attributes can be multi-valued, e.g., givenname of both James and Jim • This object contains • white-pages information • X.509 certificate for PKI Sample User Object uid=jnortrup cn: Jim Nortrup cn: James Nortrup givenname: Jim givenname: James sn: Nortrup mail: jnort@oft.state.ny.us ou: NYSOFT telephonenumber: 518-402-2018 facsimiletelephonenumber: 518-457-2019 streetaddress: NYSOFT$Executive Chamber, State Capitol usercertificate: X.509 Certificate dn: uid=jnortrup,ou=People,ou=NYSOFT,o=NY,c=US
  • 15. Attributes and ObjectClass • Attributes hold the data for an entry. • A commonly used attribute is "objectClass". • Each record represents an object, and the attributes associated with that object are defined according to it's objectClass • The value of the objectClass attribute.
  • 16. Object Type examples • Examples of objectClass: • organization (needs a name and address) • person (needs name, email, phone & address) • course (needs a CRN, instructor, mascot) • cookie (needs name, cost & taste index)
  • 17. Basic Operations of LDAP  Bind - authenticate, and specify LDAP protocol version,  Start TLS - protect the connection with Transport Layer Security (TLS), to have a more secure connection,  Search - search for and/or retrieve directory entries,  Compare - test if a named entry contains a given attribute value,  Add a new entry,  Delete/ Modify an entry,  Modify DN - move or rename an entry,  Abandon - abort a previous request,  Extended Operation - generic operation used to define other operations,
  • 18. Enough LDAP!!!!!! OK Fine We understood LDAP and the LDAP server (directory) but where do we use it????
  • 19. LDAP Application • MicrosoftActive Directory • Oracle Internet Directory • Oracle Unified Directory • Oracle Directory Server Enterprise Edition • Apache Directory Server • IBMTivoli Directory Server • Red Hat Directory Server
  • 20. Microsoft Active Directory • Active Directory is Microsoft's trademarked directory service, an integral part of theWindows 2000 architecture. Like other directory services, such as Novell Directory Services (NDS), Active Directory is a centralized and standardized system that automates network management of user data, security, and distributed resources, and enables interoperation with other directories. Active Directory is designed especially for distributed networking environments.
  • 23. MS Active Directory and LDAP (config)
  • 24. MS Outlook and LDAP (Bonus Example)