The .Net Developer's Guide to Directory Services Programming (Microsoft Windows Development Series) (1ST)

The .Net Developer's Guide to Directory Services Programming (Microsoft Windows Development Series) (1ST)

  • ただいまウェブストアではご注文を受け付けておりません。 ⇒古書を探す
  • 製本 Paperback:紙装版/ペーパーバック版/ページ数 479 p.
  • 言語 ENG
  • 商品コード 9780321350176
  • DDC分類 005.2768

Full Description


"If you have any interest in writing .NET programs using Active Directory or ADAM, this is the book you want to read."-Joe Richards, Microsoft MVP, directory servicesIdentity and Access Management are rapidly gaining importance as key areas of practice in the IT industry, and directory services provide the fundamental building blocks that enable them. For enterprise developers struggling to build directory-enabled .NET applications, The .NET Developer's Guide to Directory Services Programming will come as a welcome aid.Microsoft MVPs Joe Kaplan and Ryan Dunn have written a practical introduction to programming directory services, using both versions 1.1 and 2.0 of the .NET Framework. The extensive examples in the book are in C#; a companion Web site includes both C# and Visual Basic source code and examples. Readers willLearn to create, rename, update, and delete objects in Active Directory and ADAM Learn to bind to and search directories effectively and efficiently Learn to read and write attributes of all types in the directory Learn to use directory services within ASP.NET applications Get concrete examples of common programming tasks such as managing Active Directory and ADAM users and groups, and performing authenticationExperienced .NET developers-those building enterprise applications or simply interested in learning about directory services-will find that The .NET Developer's Guide to Directory Services Programming unravels the complexities and helps them to avoid the common pitfalls that developers face.

Contents

Listings xvTables xixForeword xxiPreface xxiiiAcknowledgments xxixAbout the Authors xxxiPart I: Fundamentals 1Chapter 1: Introduction to LDAP and Active Directory 3A Brief History of Directory Services 3Definition of LDAP 4Definition of Active Directory 5Definition of ADAM 7LDAP Basics 11Chapter 2: Introduction to .NET Directory Services Programming 27.NET Directory Services Programming Landscape 27Native Directory Services Programming Landscape 29System.DirectoryServices Overview 32System.DirectoryServices.ActiveDirectory Overview 40System.DirectoryServices.Protocols Overview 43Selecting the Right Technology 49Chapter 3: Binding and CRUD Operations with DirectoryEntry 53Property and Method Overview 54Binding to the Directory 62Directory CRUD Operations 98Chapter 4: Searching with the DirectorySearcher 109LDAP Searching Overview 109DirectorySearcher Overview 111The Basics of Searching 115Building LDAP Filters 118Controlling the Content of Search Results 136Executing the Query and Enumerating Results 139Returning Many Results with Paged Searches 143Sorting Search Results 146Chapter 5: Advanced LDAP Searches 149Administrative Limits Governing Active Directory and ADAM 150Understanding Searching Timeouts 152Optimizing Search Performance 154Searching the Global Catalog 158Chasing Referrals 161Virtual List View Searches 162Searching for Deleted Objects 169Directory Synchronization Queries 171Using Attribute Scope Query 178Extended DN Queries 181Reading Security Descriptors with Security Masks 183Asynchronous Searches 185Chapter 6: Reading and Writing LDAP Attributes 193Basics of Reading Attribute Values 193Collection Class Usage 195Understanding the ADSI Property Cache 199LDAP Data Types in .NET 200ADSI Schema Mapping Mechanism 206.NET Attribute Value Conversion 213Standard Data Types 214Binary Data Conversion 215COM Interop Data Types 216Syntactic versus Semantic Conversion 229Dealing with Attributes with Many Values 230Basics of Writing Attribute Values 234Writing COM Interop Types 241Chapter 7: Active Directory and ADAM Schema 247Schema Extension Best Practices 247Choosing an Object Class 251Choosing Attribute Syntaxes 253Modeling One-to-Many and Many-to-Many Relationships 256Search Flags and Indexing 261Techniques for Extending the Schema 264Discovering Schema Information at Runtime 266Chapter 8: Security in Directory Services Programming 273Binding and Delegation 274Directory Object Permissions in Active Directory and ADAM 300Code Access Security 315Chapter 9: Introduction to the ActiveDirectory Namespace 325Working with the DirectoryContext Class 326Locating Domain Controllers 332Understanding the Active Directory RPC APIs 339Useful Shortcuts for Developers 339Part II: Practical Applications 345Chapter 10: User Management 347Finding Users 347Creating Users 351Managing User Account Features 353Managing Passwords for Active Directory Users 376Managing Passwords for ADAM Users 386Determining User Group Membership in Active Directory and ADAM 389Chapter 11: Group Management 397Creating Groups in Active Directory and ADAM 397Manipulating Group Membership 400Expanding Group Membership 403Primary Group Membership 409Foreign Security Principals 413Chapter 12: Authentication 417Authentication Using SDS 418Authentication Using SDS.P 424Authentication Using SSPI 428Discovering the Cause of Authentication Failures 431Part III: Appendixes 433Appendix A: Three Approaches to COM Interop with ADSI 435The Standard Method 435The Reflection Method 437Handcrafted COM Interop Declarations 439Appendix B: LDAP Tools for Programmers 443LDP 443ADSI Edit 445Active Directory Users and Computers 445LDIFDE 446ADFind/ADMod 447BeaverTail LDAP Browser 447Softerra LDAP Browser 448Appendix C: Troubleshooting and Help 449Error 0x8007203A: "The server is not operational." 449Error 0x8007052E: "Login Failure: unknown user name or bad password." 450Error 0x80072020: "An operations error occurred." 450Error 0x80072030: "There is no such object on the server." 451Error 0x8007202F: "A constraint violation occurred." 451Error 0x80072035: "The server is unwilling to process the request." 452Error 0x80070005: "General access denied error." 452InvalidOperationException from DirectorySearcher 452Getting Help 453Index 455

最近チェックした商品