Online coverage from the Sun Developer Network staff 2008 JavaOne Conference

Monday May 05, 2008

By Marina Sum, staff writer, Sun Developer Network

Ludovic Poitou, community lead for OpenDS, Sun's open-source project for a next-generation directory service; and Jim Yang, project lead for Penrose, a Java technology-based directory server, took the podium at CommunityOne earlier today on the topic, “Getting Started on OpenDS.” In clear, concise terms, Ludovic described the goals and status of OpenDS, its efficient installation process, and extensibility. The second part of the session, presented by Jim, covered how Penrose took advantage of OpenDS in its development.

Introducing OpenDS
OpenDS was launched in 2006 for the purpose of developing in the Java programming language an LDAP version 3-based directory service. Currently, the community boasts 38 committers (all from Sun), of whom are 15 developers and nine QA engineers, all working full time on the project; the other committers are part-time. In addition, there are 14 contributors and 220 users.

The goals are several fold:

  • Robust services for accessing the data and consolidating data access.
  • Ease of installation, use, and management.

  • Embeddability, default implementations, and extensibility with service APIs.
  • Superior scalability and high performance in read-write operations

OpenDS 1.0 is in the works and will be available soon. Not only does it comply with LDAP version 3 with support of standard and implementation extensions, it's also configurable and extensible, complete with comprehensive documentation. Tools are in place for deployment, monitoring, and interactions with the server, with unit tests also in open source.

Installing OpenDS
According to Ludovic, you can install OpenDS in only three minutes. Just follow the pointer at opends.org and run through the steps in an intuitive wizard to define the settings: server path, host name, port number, configuration of secure access, directory data, and so forth. When installation is complete, you can perform administration tasks, such as starting or stopping the server, from either the command line or in a GUI called the Status Panel.

Extending OpenDS
Ludovic encourages everyone to make the best of OpenDS, for example--

  • Extend the LDAP schema by adding files to the schema directory or add LDAP schema attribute types or object classes for LDAP.
  • Intercept LDAP operations and processes through the DirectoryServerPlugin API, which performs two tasks:
  • Provide entry points in LDAP operations, such as preparsing and preoperations.
  • Define business constraints or LDAP extensions, a real-life example being Penrose.

Building Service Interfaces for OpenDS
Examples of service interfaces abound: AccessControlHandler, ExtendedOperationHandler, AlertHandler, security interfaces. Not all of them are public yet. Feel free to create interfaces of your own or customize the existing ones.

Introducing Penrose
Penrose, an open-source virtual directory service, does not manage its own data. Rather, it's a collection of mappings through two main infrastructures:

  • A Java background, which ensures interoperability between Penrose and other LDAP providers.
  • Metadata management, which enables mapping between data models.

Penrose chose OpenDS as its default provider for the latter's thorough testing and detailed documentation. In an intuitive GUI, Penrose Studio, you can create connections to the database, map data (for example, a MySQL entry to an LDAP entry), manipulate data, and deploy to the server.

Conveniently, you can run Penrose in two modes: as an independent server or with OpenDS as a stand-alone server with Penrose as a plug-in. Many deployments also apply, according you much flexibility with your setup.

Before checking out the code in detail, have a look at the Penrose Server Developer Guide.


A succinct, informative session! From the audience came a question, “What are the applications on which you test OpenDS?” Ludovic responded: “We test with our own tools—LDAP certification tools, for example. But remember that the community is testing for us, which is one of the many advantages of open source. We count on our members for feedback and suggestions.”

See also the presentation.



Comments:

Post a Comment:
  • HTML Syntax: NOT allowed