Fork me on GitHub

Perl LDAP

ldap.perl.org
 

Introduction

LDAP is the de-facto Internet directory standard, supported by companies such as Sun, Microsoft, IBM and Novell. LDAP is an integral part of Internet platform offerings like Sun ONE, Microsoft Exchange, and many others.

The perl-ldap distribution is a collection of perl modules which provide an object orientated interface to LDAP servers.

The perl-ldap distribution has several advantages over other LDAP interfaces for perl:

  • By using the perl object interface the perl-ldap modules provide programmers with an interface which allows complex searches of LDAP directories with only a small amount of code.
  • All the perl-ldap modules are written entirely in perl, which means that the library is truly cross-platform compatible. No C or XS extensions are used so no C compiler is needed to install the modules. No other LDAP libraries (eg libldap) are required.
  • It is being actively developed.

Distribution

The latest stable release of the library is perl-ldap-0.68.

Documentation

The POD documentation for the latest release is available online from CPAN:

Net::LDAP
Lightweight Directory Access Protocol
Net::LDAPS
Use LDAP over an SSL connection
Net::LDAPI
Use LDAP over a UNIX-domain socket
Net::LDAP::Message
Message response from LDAP server
Net::LDAP::Intermediate
Intermediate response object base class
Net::LDAP::Intermediate::SyncInfo
Sync Info Message object
Net::LDAP::Search
Object returned by Net::LDAP search method
Net::LDAP::Entry
An LDAP entry object
Net::LDAP::Reference
Search reference
Net::LDAP::Filter
Representation of LDAP filters
Net::LDAP::LDIF
LDIF reading and writing
Net::LDAP::DSML
DSML reading and writing
Net::LDAP::RootDSE
Server information (RootDSE)
Net::LDAP::Schema
Load and manipulate an LDAP v3 Schema
Net::LDAP::Constant
Constants for use with Net::LDAP
Net::LDAP::Util
Utility functions
Net::LDAP::Extra
Load extra Net::LDAP methods
Net::LDAP::Extra::AD
Net::LDAP convenience methods for Active Directory
Net::LDAP::Extra::eDirectory
Net::LDAP extensions for Novell eDirectory

LDAP v3 Server Controls

Net::LDAP::Control
LDAPv3 control object base class
Net::LDAP::Control::Assertion
LDAPv3 Assertion control object
Net::LDAP::Control::DontUseCopy
LDAPv3 Don't Use Copy control object
Net::LDAP::Control::EntryChange
LDAPv3 Entry Change notification response
Net::LDAP::Control::ManageDsaIT
LDAPv3 ManageDsaIT control and response
Net::LDAP::Control::MatchedValues
LDAPv3 MatchedValues control
Net::LDAP::Control::NoOp
LDAPv3 No-Op control object
Net::LDAP::Control::PasswordPolicy
LDAPv3 Password Policy control and response
Net::LDAP::Control::Paged
LDAPv3 Paged results control object
Net::LDAP::Control::PostRead
LDAPv3 Post-Read control object
Net::LDAP::Control::PreRead
LDAPv3 Pre-Read control object
Net::LDAP::Control::PersistentSearch
LDAPv3 Persistent Search control object
Net::LDAP::Control::ProxyAuth
LDAPv3 Proxy Authorization control object
Net::LDAP::Control::Relax
LDAPv3 Relax control object
Net::LDAP::Control::Sort
Server Side Sort (SSS) control object
Net::LDAP::Control::SortResult
Server Side Sort (SSS) result control object
Net::LDAP::Control::Subentries
LDAPv3 Subentries control object
Net::LDAP::Control::SyncDone
LDAPv3 Sync Done control object
Net::LDAP::Control::SyncRequest
LDAPv3 Sync Request control object
Net::LDAP::Control::SyncState
LDAPv3 Sync State control object
Net::LDAP::Control::TreeDelete
LDAPv3 TreeDelete control object
Net::LDAP::Control::VLV
LDAPv3 Virtual List View control object
Net::LDAP::Control::VLVResponse
LDAPv3 Virtual List View server response

LDAP v3 Extended Operations

Net::LDAP::Extension::Cancel
LDAPv3 Cancel operation
Net::LDAP::Extension::Refresh
LDAPv3 Refresh extension object
Net::LDAP::Extension::SetPassword
LDAPv3 Modify Password extension object
Net::LDAP::Extension::WhoAmI
LDAPv3 "Who am I?"" operation

Help

Net::LDAP::FAQ
Frequently Asked Questions about Net::LDAP
Net::LDAP::Examples
PERL LDAP by Example
Net::LDAP::RFC
List of related RFCs
Net::LDAP::Security
Security issues with LDAP connections

Other

Bundle::Net::LDAP
A bundle for Net::LDAP
LWP::Protocol::ldap
Support for using ldap:// schemed URLs following RFC 4516 with LWP
LWP::Protocol::ldapi
Support for using ldapi:// schemed URLs with LWP
LWP::Protocol::ldaps
Support for using ldaps:// schemed URLs with LWP
Net::LDAP::FilterMatch
LDAP entry matching on the Perl side

At the 2001 O'Reilly Open Source Conference, Graham Barr presented this tutorial.

Requirements

You will need the Convert::ASN1 package.

LDAP RFCs

www.bind9.net has a comprehensive list of LDAP RFCs

Mailing List

There is also a mailing list for the perl-ldap project. You do not have to subscribe in order to post a question, and the list is filtered for spam automatically.

To post

To subscribe

To unsubscribe

List archives

Related Projects

Other Publications

Deploying OpenLDAP
(ISBN: 1590594134)
written by Tom Jackiewicz,
published by Apress.
Mentions Net::LDAP modules

The ABCs of LDAP: How to Install, Run, and Administer LDAP Services
(ISBN: 0849313465)
written by Reinhard Voglmaier,
published by Auerbach Pub.
Provides an introduction to Net::LDAP in its chapter on LDAP APIs

Implementing LDAP
(ISBN: 1861002211)
written by Mark Wilcox,
published by Wrox Press.
Mentions perl-ldap in Chapter 11.

Perl for System Administration
(ISBN: 1565926099)
written by David N. Blank-Edelman,
published by O'Reilly & Associates.
Mentions LDAP and perl-ldap in its chapter on Directory Services.

Managing Enterprise Active Directory Services
(ISBN: 0672321254)
written by Robbie Allen and Richard Puckett,
published by Addison-Wesley

LDAP System Administration
(ISBN: 1565924916)
written by Gerald Carter,
published by O'Reilly & Associates.
Has a chapter on Net::LDAP and perl.

Understanding and Deploying LDAP Directory Services, Second Edition
(ISBN: 0672323168)
written by Tim Howes, Mark C Smith and Gordon Good,
published by Addison-Wesley Professional.
It only mentions Net::LDAP in passing but gives good general guidance.

LDAP: Programming Directory-Enabled Apps
(ISBN: 1578700000)
written by Tim Howes, Mark C Smith and Gordon Good,
published by Que.

Mastering OpenLDAP: Configuring, Securing and Integrating Directory Services
(ISBN: 1847191029)
written by Matt Butcher,
published by Packt Publishing.

LDAP Directories Explained: An Introduction and Analysis
(ISBN: 1847191029)
written by Brian Arkills,
published by Addison-Wesley Professional.

Current Release 0.68