In this book, a team of leading software engineers cover all you need to know to start building enterprise-class directory services applications with today's most important technologies, including LDAP, Sun's JNDI, and Microsoft's ADSI. Start by understanding the problems directories were invented to solve, and the key qualities enterprise-class directory services and directory applications must have, such as availability and security. Review the past, present, and future of directory technologies, as well as "nuts and bolts" issues such as replication, partitioning, and schema. The book includes a full section of case studies demonstrating how directory-enabled applications can solve critical problems throughout the enterprise. The accompanying CD-ROM contains extensive directory services code in C, C++, Java, and Visual Basic, as well as LDAP software developer kits for Windows, Solaris, and IBM OS/390; the IBM SecureWay LDAP Directory Server; a JNDI client SDK; all relevant RFCs; plus this entire book and four bonus IBM Redbooks on LDAP and Enterprise JavaBeans.
"Sinopsis" puede pertenecer a otra edición de este libro.
Intended Audience This book is for information system architects, enterprise software developers (or those who want to be), consultants, students, and technology managers who need to understand the architecture, benefits, and services provided by directories. The goal is to provide the reader with background, motivation, and details on building enterprise software solutions using directory services. The book is not about installing and configuring directory services, although there is information on those topics on the CD. Rather, this book is about Internet scale software and how it can use directory services to solve business problems.
What Is a Directory? A directory is a distributed data storage and retrieval mechanism. It has some of the characteristics of a database, a transaction processing system, and a file system. A directory is a wonderful place in which to manage information so that multiple operating systems, or multiple instances of one operating system, can use it. Directories can hold nearly anything: descriptions of people and their e-mail addresses, locations of vital services in the network, configuration data, user-defined data, and more.
What Is Enterprise Software? Enterprise software is distinguished from other software in the critical nature of its function. It is commonly the application or set of applications that run an enterprise, whether it's a company, school, government agency, or international organization. Directories are both enterprise software and enabling technology for enterprise software. As enterprise software, directories are a key part of a software system that must exhibit the highest levels of performance, scalability, and robustness. As enabling technology for enterprise software, directories enable other applications to be written that themselves must exhibit the highest levels of these characteristics.
What Is LDAP? The Lightweight Directory Access Protocol (LDAP) is a relatively new standard for accessing directory services. This exciting new protocol and its API are being implemented across a wide range of directories and other products. While this book is not solely about LDAP, many of our examples use it because it is such an important new standard.
What if You Prefer Java? For the enterprise Java engineer or professional, in addition to C-based LDAP programming, we cover Java Naming and Directory Interfaces (JNDI). Many of our examples use C or C++ with LDAP, but some are provided in both LDAP C and JNDI. A very few are provided only in JNDI. For good measure, and to show you that there are other ways to program directories, a small number of examples use still other APIs, such as PerLDAP (a close match for LDAP in Perl) and ADSI (Microsoft's COM-based Active Directory Services Interfaces).
What if You Don't Know LDAP or JNDI? If you have no LDAP familiarity at all, the best way to use this book is to read Part 1 and browse Appendix A as needed (you should read Appendices A and B before starting Part 2). Appendix A is a quick summary of LDAP from a programming perspective, and Appendix B is a quick summary of JNDI. If you need more complete LDAP and JNDI API references, you will find them on the companion CD in the Redbooks section (for LDAP) and the JNDI section.
What This Book Is and Is Not This book explores enterprise class software and how directory services can be exploited to improve the enterprise characteristics of your software. Enterprise is a word we use to denote "important" software, such as business critical systems, often implemented in heterogeneous operating system environments. Enterprise characteristics are those qualities that make software suitable for business critical systems.
This book is not an API reference (although LDAP and JNDI references and other sources can be found on the companion CD). Instead of walking you through the parameters of an API set, our goal is to build you a mental toolkit of enterprise software techniques with directories. With these techniques and an enterprise mindset, you will be able to build more intelligent, larger scale, and more robust systems using directories.
Example Programs It is difficult to provide examples for real directory services. There are many vendors, many differences among implementations and nuances of supported features, and a relatively low likelihood that you already have a directory server running on your laptop or desktop. Some of the example programs provided with this book were built using Microsoft's Windows 2000 Server and its built-in Active Directory. Other examples were built using IBM's OS/390 and the IBM SecureWay LDAP Directory or with Linux and the OpenLDAP Directory Server. To build and run any of these yourself, you would need to make some changes due to your configuration, chosen directory service, schema, or other factors. All of the example programs could be run with modification using the IBM SecureWay LDAP Directory, which is included on your CD, or another LDAP directory. Most examples will need at least minor changes for your environment, and some examples may need major changes (for example, porting a Windows GUI application to X-Windows). For instance, you might need to install the Java JDK and JNDI for JNDI examples (a JNDI client is supplied on the CD), to install an LDAP C client (again, one is supplied on the CD), to supply appropriate security credentials, or to supply different directory entry names or directory server names. Each example program is provided on the CD with complete source code, a summary describing its features, and hints on how to port it to other platforms or other directory services. Keep in mind that any example programs shipped with this book are just that: examples of techniques. It is not our intent to cover every possible error case, even though enterprise software would do that. Most of the example programs were written specifically to illustrate a few ideas and are not from a production system. You might even find bugs. If you do find bugs or other interesting "features" in any of our example programs, we would like to hear from you. You can contact any or all of us by e-mail using the addresses in About the Authors. Sorry, there is no "bug bounty."
The Companion CD The companion CD contains many interesting and useful things. This book! So you can take your laptop on a business trip and pack the CD instead of the printed version, if that is your preference. Example programs. All of the sample programs are contained on the CD and organized in a chapter/appendix directory tree easily reachable from a root HTML page. Complete working versions of the IBM SecureWay LDAP Directory Server for Microsoft Windows and other supporting products. You can install these from the CD, but you must agree to the license terms, which state that this software can be used only for development purposes--production use, among other things, is strictly prohibited. C LDAP client software developer kits (SDKs) for Microsoft Windows, Sun Solaris, and IBM AIX. A multiplatform JNDI client SDK. If you want to program in Java instead of using the C-based LDAP client SDKs, this is for you. Complete versions of useful Redbooks from IBM Engineers. Understanding LDAP, which contains LDAP API information, programming samples, and other background, SG24-4986-00 LDAP Implementation Cookbook, which has information on planning for a directory service, installation, configuration, and some examples, SG24-5110-00 Ready for e-business: OS/390 Security Server Enhancements, which describes LDAP uses on OS/390, SG24-5158-00 Enterprise JavaBeans Development Using VisualAge for Java, Chapter 6, which contains information on JNDI, SG24-5429 Other technical books containing useful information. The following books, while specific to the OS/390 platform, contain information that is applicable to other platforms as well. OS/390 Security Server: LDAP Server Administration and Usage Guide, has information on running a particular LDAP server for large systems, SC24-5861-04 2 OS/390 Security Server: LDAP Client Application Development Guide and Reference, contains an LDAP API reference and programming examples, SC24-5878-01 The complete Java Naming and Directory Interfaces (JNDI) specification from Sun Microsystems. It's fully hyperlinked and ready to browse or use as a reference. The IBM Common Schema. These are the schema objects IBM products use to extend multiple directory servers. This snapshot package (schemas do change) is fully hyperlinked and ready to browse. Other supplementary write-ups and materials. See the welcome.htm page in the CD root for links to other information.
All of this material can be reached from a home page on the CD (welcome.htm), or by navigating the directories on the CD. The directory structure of the CD is intentionally very simple to allow easy exploration.
The Organization of This Book This book is divided into five parts. The descriptions and aims of each section are as follows.
Part 1 introduces the problem, including the origins of directories, the fundamental problems, and the history behind directory services. Part 2 describes how enterprise software characteristics relate to directory services. Chapters cover availability, security, and usage categories of directory services. This section shows how directories can be used to improve the enterprise characteristics of your software. Part 3 contains some nuts and bolts of directory services, with chapters on directory replication and partitioning, schemas, and descriptions of some directory products. In addition to the basics of directory services construction, this section offers a glimpse of where directory services may be going in the future. Part 4 consists of case studies. Chapters cover specific examples of how directory services can be used to solve real problems, such as personalizing Internet access and managing applications through common profiles. Part 5 is the reference section with URLs, API and protocol descriptions, RFCs, the glossary, and other information. Appendix H, for example, contains URLs for numerous topics (on the CD the links are all live and can take you to the latest vendor information, RFCs, and other places). Appendices A, B, and C are API mini-references. Most of the things in this part are meant to be referenced when needed, rather than read sequentially.
How to Use This Book How you use this book will depend on your experience. For example, if you already know a great deal about enterprise software and about directories, you may find the case studies and reference material interesting, but perhaps not the earlier sections. Here is a rough guide.
If You Already Know a Great Deal About:
Then You Will Want: Neither directories nor enterprise computing
The entire book Enterprise computing
Parts 1, 3, 4, and 5 Directories
Parts 2, 4, and 5 Enterprise computing and directories
Parts 4 and 5 We hope there is something here for everyone who wants to learn about directories and how they can enable enterprise class computing. Enjoy!
Acknowledgments We would like to thank Mike Schlosser for starting the LDAP implementation cookbook and for providing our Metadirectory case study (Chapter 29). Thanks to Ellen Stokes for her helpful advice, and to James Mannon, Jamil Bissar, and Chris Pascoe for their help in getting the SecureWay LDAP Directory on the CD. In addition we wish to thank David Goodman at Lotus for his article, "The Domino Directory: The Foundation of a Directory-Enabled Infrastructure," and to Jeffrey Snover at Tivoli; Heinz Johner and Ian Crane of the IBM ITSO Redbook organization; and Pat Gibney, Dick Sullivan, and Bill Behan for their help and sponsorship. Our thanks also to the others at IBM who helped: Christina Lau, Greg Doudnikoff, Mark Simpson, Dave Peterson, Dave Dyar, and Pat Fleming. Many reviewers helped improve early drafts. We would like to thank the ones who don't mind being mentioned publicly for their invaluable help: Rosanne Lee, James Pinpin, Richard Brooks, James Frentress, Anton Stiglic, and Maynard Johnson.
Of course the great staff at Addison Wesley deserves much of the credit. They include Julie DiNicola and many more. We would also like to thank the production team: Kim Arney, the project manager and compositor; Carol Noble, the copyeditor; Pat Menard, the proofreader; and Jason Jones and Katie Noyes, the CD designers. Finally, we want to thank our families for putting up with this project: Susan, Matthew, and Graham House; Carey Mauget; Jeannie, Megan, and Allen Daugherty; and Jeanne, Jeffrey, and Dylan Hahn.
0201700395P04062001From the Back Cover:
e-Directories: Enterprise Software, Solutions, and Services is a clear and comprehensive guide to understanding and building industrial-strength enterprise applications that utilize directory services technology. It features the real-world information and techniques needed to build robust, reliable applications, using leading technologies such as the Lightweight Directory Access Protocol (LDAP) and Java Naming and Directory Interface™ (JNDI).
The authors share their insights and give a detailed description of the nuts and bolts of directory services structure and function. In addition, the book presents case studies that illustrated how directory services provide solutions to enterprise challenges. Extensive appendices provide comprehensive references to leading APIs and protocols.
The resource-packed CD-ROM includes the book online; example programs with source code; complete working versions of the IBM SecureWayAE LDAP Directory Server for WindowsAE; LDAP SDKs for Windows, Solaris™, and AIX; and a multi-platform JNDI client SDK. The CD-ROM also contains complete versions of useful Redbooks from IBM Engineers and live URLs that can take you to the latest technical information.
Clear explanations, practical techniques, and a valuable CD-ROM make this book your ultimate resource on Directory Services and how they relate to enterprise class software.
"Sobre este título" puede pertenecer a otra edición de este libro.
Descripción Addison-Wesley Pub (Sd), 2000. Paperback. Estado de conservación: New. Nº de ref. de la librería DADAX0201700395
Descripción Longman Group. Estado de conservación: New. pp. 544. Nº de ref. de la librería 7575691