|
Timothy A. Howes and Mark C. Smith
Reviewed by George W. Leach <gwleach@gte.net> The Lightweight Directory Access Protocol (LDAP) has emerged over the past couple of years as a key enabling technology for building large-scale distributed systems. Originally devised as a lightweight alternative to ISO technologies for client access to X.500 directory services, LDAP has evolved to become a universal access protocol for accessing both standards-based (X.500, NIS, DNS, DHCP, DCE) and proprietary directories (Microsoft Exchange, Novell NDS, Microsoft Active Directory in NT 5.0, Lotus Domino, Lotus CCmail). And LDAP standardization efforts have evolved to encompass support for native LDAP servers as well. LDAP: Programming Directory-Enabled Applications with Lightweight Directory Access Protocol is the only book published on this important topic to date. The authors' names are affiliated with just about every important RFC associated with LDAP and with good reason. They were two of the key people responsible for the development of the original LDAP specification and implementation at the University of Michigan. Both have since moved on to help define the next version of LDAP (v3) and develop a commercial implementation of an LDAP server at Netscape Communications. The focus of this book is on the C Programming Language Application Programming Interface (API) for client programs accessing directory services via LDAP. Two different C API Software Development Kits (SDKs) are covered in this book the University of Michigan and Netscape SDKs. Both versions described in the book correspond with v2 of LDAP and are now superceded by the emerging v3 specifications. The authors point out differences between the two APIs, which are relatively few, throughout the book. A minimal overview of LDAP, its capabilities, and how the schema of an LDAP server is designed is provided in the first three chapters. The remainder of the book dives into a detailed look at the C API for invoking LDAP capabilities to make inquires or updates upon the server. The organization of introducing new API calls flows in a logical manner and is supported with numerous examples and code listings. There is a great deal of repetition in the book. Variations are made on example code, which can get quite lengthy at times. Many API calls take some of the same parameters and provide the same return types. Each new API call provides a complete listing and description of each parameter and return type. But this is fine because it makes it more usable as a reference. Although it may get rather tedious to read at times, this book does give the reader a very comfortable feel for the capabilities of the API and hence LDAP from a client perspective. And despite the fact that the book is now somewhat out of date with the evolution of LDAP and the C API, the backward compatibility with v2 still make this a worthwhile book to read. Both SDKs are freely available on the Internet. The University of Michigan implementations of both the C API and the LDAP server have not been enhanced since the spring of 1996 and support only v2. The Netscape C API SDK and Netscape Directory Server have been enhanced to support the proposed v3 LDAP capabilities and remain backward compatible with v2.
The current specification for the LDAP v3 C API may be found at The version of the C API corresponding to this Internet Draft is available from Netscape: <http://developer.netscape.com/tech/directory/downloads.html> More information on LDAP may be found at the following URLs:
<http://people.netscape.com/bjm/whyLDAP.html>
|
|
First posted: 5th November 1998 jr Last changed: 5th November 1998 jr |
|