views:

376

answers:

2

The (low level) Active Directory API System.DirectoryServices.Protocols contains a class called ExtendedRequest. I can not seem to find any good documentation for this class but the name suggests that you can perform Active Directory operations with it that are not modeled as a standard class in this namespace.

Does anyone know what you can do with this class and how to use it? The only inputs it accepts are a string and a byte array..

Thanks.

+1  A: 

Reflectoring it shows that when it is used by LdapConnection, it's just a wrapper for the ldap_extended_operation API. This appears to be a common API that has documentation on several platforms. For example, this page shows how use it with OID's.

Jeff Moser
+1  A: 

Jeff's answer has given me some good hints in the right direction. The ldap_extended_operation API is a directory server specific API and every directory server may or may not support some set of non-standard operations. The operations a directory server supports can be found in the rootDse attribute supportedExtension.

Every supported extension has a unique OID which is the property ExtendedRequest.RequestName and optionally needs data: ExtendedRequest.RequestValue. What data you should provide for what request can probably be found somewhere in the documentation for the active directory server.

Ronald Wildenberg