$90.68
HARDCOVER, NEW
Ships from International Warehouse (read more)
available for shipping only
Not available for In-store Pickup
| Qty | Store | Section |
|---|---|---|
| 1 | International Warehouse | Software Engineering- Programming and Languages |
| Hide store locations | ||
LDAP Programming with Java
by Tony Dahbura
|
|
|
About This Book
ISBN13: 9780201657586 |
Only 1 left in stock at $90.68!
Synopses & Reviews
Publisher Comments:
Lightweight Directory Access Protocol (LDAP) is now a staple of enterprise and Internet software environments. Anyone involved with Internet development, where Java(TM) technology is prominent, or in enterprise information systems must understand how to use Java technology--especially the Directory SDK for Java--in order to unlock the power of LDAP. <P> Written by the designer of the Directory SDK for Java and by a leading implementor of directory-based solutions," LDAP Programming with Java(TM)" is the first accurate, concise, and complete guide on accessing LDAP from Java applications. Assuming familiarity with Java programming, the book provides a comprehensive discussion of LDAP, from basic directory concepts to the most advanced techniques. It collects in one convenient resource the many innovative and experience-based techniques and approaches programmers have discovered for using the Directory SDK to solve LDAP access challenges. <P> If you are new to LDAP, you will find helpful background information about the role of directories in today's software systems; LDAP methods of storing, accessing, searching, and updating data; and how the Directory SDK for Java helps applications gain access to an LDAP server. Once you have become proficient with the essential concepts and techniques, you can move on to detailed material about authentication, LDAP and JavaScript(TM), working with JavaBeans(TM) for reusable LDAP components, expressing data relationships in a directory, and other advanced LDAP subjects. <P> Specific topics covered include: <LI>The LDAP naming and information models <LI>The command-line tools of the SDK <LI>Authentication with a password, SSL, and SASL<LI>Configuring access control <LI>Writing LDAP applets for a browser <LI>Accessing the SDK from JavaScript <LI>Storing configuration and preferences in a directory <LI>Encapsulating LDAP functionality in a JavaBean <LI>Using LDAP in Java servlets <LI>LDAP URLs <LI>Multiple threads and mu
Book News Annotation:
This guide to accessing the lightweight directory access protocol
(LDAP) from Java applications provides experienced Java programmers
with techniques for using the Directory SDK to solve LDAP access
challenges. Advanced topics include authentication, working with
JavaBeans for reusable LDAP components, and expressing data
relationships in a directory. The CD-ROM contains source code for
the Directory SDK and examples.
Annotation c. Book News, Inc., Portland, OR (booknews.com)
Annotation c. Book News, Inc., Portland, OR (booknews.com)
Synopsis:
In this book, the creators of the Directory SDK for Java show how it can be used to build powerful, standards-based directory applications that leverage LDAP directory information on intranets, the Internet, even in e-commerce applications. The CD-ROM includes reference documentation and source code for the Directory SDK for Java and for all examples and programs in the book, as well as the entire text of the book in a fully searchable format.
Table of Contents
Preface Acknowledgments
Introduction
Chapter 1 What Can You Find in a Directory?
What Is a Directory?
What Is That Phone Number?
Directory Clients for an Online Phone Book
Is He Really Who He Says He Is?
Working Together
Computers, Printers, Toasters
Chapter 2 The Lingua Franca of Directories Is LDAP
A Brief History of Electronic Directories
I Heard It through the Grapevine
Directories for the Internet
>Directories for a Single Network: Proprietary Solutions
X.500: The "Heavyweight" Directory Service
From Humble Beginnings
Future Directions for LDAP
The LDAP Information and Naming Models: How Directories Are Organized
The LDAP Information Model
The LDAP Naming Model
LDAP Spoken Here
Many Roads to Rome
Directory SDK for C
Directory SDK for Java
Java Naming and Directory Interface
Chapter 3 May We Introduce Directory SDK for Java
What Directory SDK for Java Can Do for You
Freedom from Protocol Handling
The Use of Standard Java Objects for Returning and Processing Data
Utility Classes for Handling LDAP-Specific Entities
Full Access to All LDAP Services
Flexible Authentication Models
Write Once, Run Anywhere
Multilayered Functionality
A Platform for Directory-Enabled Applications
What Else Can the SDK Do for Me?
Dynamic Organizational Chart
Directory-Linking Tool
Access Control for Existing or New Applications
Installation and Setup of the SDK
Staying Current
Installing the SDK
Conclusion
Part II Getting Started
Chapter 4 Setting Up Your Own Directory
Downloading and Installing Netscape Directory Server
Before You Download and Install the Software
Downloading Netscape Directory Server
Installing Netscape Directory Server
Setting Up the Sample Database
Using the Command-Line Tools with Your New Directory
Finding Entries with LDAPSearch
Adding Entries to the Directory
Understanding LDIF: How to Describe a Directory Entry
Object Classes: Determining What Information Makes Up an Entry
Choosing a Distinguished Name: Where Do You Want to Add the Entry?
Examples of Defining and Adding Entries
Conclusion
Chapter 5 Searching with the SDK
Our First Search
Host Name
Port
Base DN
Scope
Filter
Attributes
Search Preferences
Our First Search Program
Using Search Filters
Handling Results
Attributes in Detail
I Want Only One Record and I Have the DN
Searching and Comparing
More on Filters
Sorting
Authenticating for Searches
Improving Directory Search Performance
Use Indexed Attributes
Specify an Object Class to Get Only Entries of the Desired Type
Retrieve Only Attributes You Need
Keep the DN Handy
Use compare Where It Makes Sense
Conclusion
Chapter 6 Creating and Maintaining Information
Before We Can Update: Authentication Basics
Adding an Entry
Summary of Steps to Add a New Entry
Inserting Records from a Data File
Adding an Organizational Unit
Processing Exceptions
Modifying an Existing Entry
Summary of Steps to Modify an Existing Entry
Adding an Attribute
Modifying an Attribute
Removing an Attribute
Updating Multivalued Attributes
Storing Binary Data
Storing Preferences and State
Deleting an Entry
Renaming an Entry: Modifying the RDN
Managing Groups
Adding a User to a Group
Removing a User from a Group
Using the LDAPIsMember Bean
Conclusion
Chapter 7 Securing the Data
No Standards for Access Control
Setting Up an Access Control List
Viewing Access Control Lists through LDAP
Modifying Access Control Lists through LDAP
Authenticating to the Directory
Using Password-Based Authentication
Communicating over Secure Sockets Layer
Using Certificate-Based Authentication
Using SASL Authentication
Authenticating with SASL in LDAP
Callbacks in SASL
The SASL Framework Classes
Preparing to Use an Existing Mechanism
Your Own SaslClient and ClientFactory
Conclusion
Part III Getting Down and Dirty
Chapter 8 More Power to the Browser: An Applet That Speaks LDAP
What's So Different about an Applet?
Certificates and Signed Applets
Writing LDAP Applets for Netscape Navigator
Requesting Connection Privileges
Packaging Your Applet
Generating a Test Certificate
Signing Your Code
Testing Your Applet
Using the Codebase as a Principal
Writing LDAP Applets for Microsoft Internet Explorer
Requesting Connection Privileges
Packaging Your Applet
Generating a Test Certificate
Signing Your Code
Creating a Web Page for the Applet
Writing LDAP Applets for Java Plug-In Software
Packaging Your Applet
Generating a Key Pair and Self-signed Certificate
Signing Your Code
Setting Up the End Useris System
A Directory Viewer Applet
A Simple Example for Java Plug-In Software
Conclusion
Chapter 9 Scripting LDAP: JavaScript and Java
Accessing Java Applets from JavaScript
Accessing Java Objects from JavaScript
JavaScript Gotchas
Handling Java Exceptions in JavaScript
Handling Arrays of Strings
Requesting Privileges and Signing Your JavaScript Code
Accessing the LDAP Classes from JScript in Internet Explorer
Conclusion
Chapter 10 Don't Redo It, Reuse It: LDAP JavaBeans
Invisible LDAP JavaBeans
LDAPBasePropertySupport
LDAPSimpleAuth
LDAPGetEntries
Directory-Based Authentication in JavaScript
Using PropertyChangeEvent Notifications
Graphical LDAP JavaBeans
A Directory Browser
A Directory Lister
Conclusion
Chapter 11 Make Your Application Location-Independent
The Teex Multicharacter-Set Text Editor
The Teex JavaBean
A Class for User Preferences
Storing Preferences as Attributes in User Entries
Saving Preferences as an Object in the Directory
Using Directory Structure to Model Attributes
Conclusion
Chapter 12 Modeling Relationships
Mirroring an Organizational Structure
Attributes as Pointers
Parsing the Reporting Relationships in a Directory
An Alternative Strategy for Management Parsing
An Organizational Chart Tree Component
A More Traditional Organizational Chart Component
Inspecting Properties of an Entry
Connecting the Property Table and the Directory Viewers
Conclusion
Chapter 13 Servlets and LDAP
Overview of Servlets
Uses of LDAP in Servlets
Designing the LDAP Servlet
Location of Files
Our Phone Book Servlet
Phone Book Lookups
Accessibility with a Simple Browser
Utilizing the Corporate LDAP Directory
Customizability
Search Attributes
Intranet and Extranet
User Self-administration
Connection Pooling and Data Caching
Accessibility over SSL
Connection-Pooling Class
Servlet Request-Response Model
Setting Up and Using the Servlet
Tips for Servlet Developers
Conclusion
Part IV Beyond the Basics
Chapter 14 Options and Constraints
How Do They Affect Me?
A View into Options
TimeLimit
Referrals
BindProc
ReBindProc
HopLimit
Constraints for Searching
ServerTimeLimit
Dereference
MaxResults
BatchSize
MaxBackLog
Conclusion
Chapter 15 Odds and Ends
LDAP URLs
An IETF Standard
Using LDAP URLs in Java
Not Your Average URL
A Rose by Any Other Name
When What You Read Is Not What You Wrote
Sometimes One Thread Is Not Enough
Don't Step on My Settings
A Cloned Connection Is a Safe Connection
Performance, and How to Get It
Breaking Up Is Hard to Do: Avoid Unnecessary Connections
Pool the Connections
Fewer But Better Searches
To Cache or Not to Cache
Conclusion
Information about Information: Managing the Schema
Programmatic Access through the Schema Classes
A Pretty Printer for Schema Contents
Controls: An Essential Extension
Too Much Data: A Virtual List View
Call Me When You're Ready: Persistent Search
Password Expiration Notification
Trust Me: The Proxied Authorization Control
Your Very Own Controls: Using the BER Package
When the Data Lives Elsewhere: Managing Referrals
Catching and Processing Referral Exceptions
Automatic Referrals: Anonymous or under
Client Control
The manageDsaIT Control
LDAPBind for Complete Client Control
And Now for Something Completely Different:
Extended Operations
Aiming for 24_7: Failover and Reconnecting
Transparent Reconnection
Controlling the Result Queue: The Connection Backlog
Down to the Wire: Using the Asynchronous Interface
Conclusion
Appendix A More to Learn about LDAP
Going to the Source: Internet Standards
Where to Get RFCs and Internet Drafts
LDAP RFCs
LDAP Internet Drafts
X.500 Documents
Books about LDAP
LDAP Concepts and Deployment
LDAP Programming
X.500
LDAP Information on the Internet
LDAP FAQs and Presentations
LDAP Client SDKs
Add-On Products for LDAP Directories
Collections of LDAP Documents and Links
X.500
Miscellaneous
Newsgroups Where LDAP Is Spoken
LDAP in Your Inbox
LDAP Servers at Your Disposal
Appendix B Classes of the LDAP SDK
The netscape.ldap Package
LDAPConnection and Connection Management
Basic LDAP Message and Data Encapsulation
Handling Messages from the Server
Authentication and Reauthentication
Exceptions
Controls
Caching
Client-Side Sorting
Schema Representation
Miscellaneous Utility Classes
The netscape.ldap.util Package
DNs and RDNs
LDIF Reader Classes
Connection Pool
Appendix C LDAP Utility Classes on the CD-ROM
The table Package
The util Package
Appendix D Common LDAP Schema Elements
Object Classes
Abstract Object Classes
Structural Object Classes
Auxiliary Object Classes
Attributes
Attribute Syntaxes
Attribute Types
Appendix E LDAP Error Codes
Index
What Our Readers Are Saying
Be the first to add a comment for a chance to win!
Product Details
- ISBN:
- 9780201657586
- Subtitle:
- tm
- Other:
- Weltman, Rob
- Author:
- Author:
- Publisher:
- Addison-Wesley Professional
- Location:
- Reading, Mass.
- Subject:
- Programming Languages - General
- Subject:
- Programming - General
- Subject:
- Networking - Network Protocols
- Subject:
- Computer network protocols
- Subject:
- Java (Computer program language)
- Subject:
- Java
- Edition Number:
- 1
- Series Volume:
- 888
- Publication Date:
- February 2000
- Binding:
- Hardcover
- Language:
- English
- Illustrations:
- Yes
- Pages:
- 720
- Dimensions:
- 24 cm. +










