System.DirectoryServices.Protocols Namespace

The System.DirectoryServices.Protocols namespace provides the methods defined in the Lightweight Directory Access Protocol (LDAP) version 3 (V3) and Directory Services Markup Language (DSML) version 2.0 (V2) standards.

Public classAddRequestThe AddRequest class adds an entry to the directory.
Public classAddResponseThe AddResponse class is returned by SendRequest as a response to AddRequest.
Public classAsqRequestControlThe AsqRequestControl class creates an attribute scoped query (ASQ) control. This control is used with a search request to force the query to be based on a specific DN-valued attribute.
Public classAsqResponseControlThe AsqResponseControl class is returned in a SearchResponse object as a response to a AsqRequestControl query.
Public classBerConversionExceptionThe BerConversionException class is an exception thrown when converting data using a BerConverter object.
Public classBerConverterThe BerConverter class encodes and decodes structured data using basic encoding rules (BER).
Public classCompareRequestThe CompareRequest class determines whether the directory object holds the specified value for the attribute.
Public classCompareResponseThe CompareResponse class is returned by SendRequest as a response to CompareRequest.
Public classCrossDomainMoveControlThe CrossDomainMoveControl class is used with a ModifyDNRequest object to move an LDAP object from one domain to another.
Public classDeleteRequestThe DeleteRequest class deletes an entry from the directory.
Public classDeleteResponseThe DeleteResponse class is returned by SendRequest as a response to DeleteRequest.
Public classDirectoryAttributeThe DirectoryAttribute class enables access to the attribute values.
Public classDirectoryAttributeCollectionThe DirectoryAttributeCollection class contains a collection of DirectoryAttribute objects.
Public classDirectoryAttributeModificationThe DirectoryAttributeModification class enables modification of the DirectoryAttribute values.
Public classDirectoryAttributeModificationCollectionThe DirectoryAttributeModificationCollection class contains a collection of DirectoryAttributeModification objects.
Public classDirectoryConnectionThe DirectoryConnection class is an abstract class and cannot be instantiated. Use the LdapConnection or DsmlSoapHttpConnection classes to connect to a directory server.
Public classDirectoryControlThe DirectoryControl class specifies extension data for various LDAP operations.
Public classDirectoryControlCollectionThe DirectoryControlCollection class manages a collection of DirectoryControl objects.
Public classDirectoryExceptionThe DirectoryException class is an abstract class used as the base class for all System.DirectoryServices.Protocols exceptions.
Public classDirectoryIdentifierThe DirectoryIdentifier class is an abstract class that identifies the target to connect to.
Public classDirectoryNotificationControlThe DirectoryNotificationControl class is a directory control used with an extended LDAP asynchronous search function to register the client to be notified when changes are made to an object in the Active Directory Domain Services.
Public classDirectoryOperationThe DirectoryOperation class is an abstract class used as a base for request and response elements.
Public classDirectoryOperationExceptionThe DirectoryOperationException class is an exception thrown by the LdapConnection.SendRequest method to indicate that the server returned a DirectoryResponse object with an error.
Public classDirectoryRequestThe DirectoryRequest class is the base class for request related classes, like the SearchRequest and AddRequest classes.
Public classDirectoryResponseThe DirectoryResponse class is the base class for request response classes, like the SearchResponse and AddResponse classes.
Public classDirSyncRequestControlThe DirSyncRequestControl class is a directory control that enables the application to search the directory for objects that have changed since a previous state.
Public classDirSyncResponseControlThe DirSyncResponseControl class is a directory control used to pass DirSyncRequest information from the server to the client.
Public classDomainScopeControlThe DomainScopeControl class is a directory control used to instruct the LDAP server not to generate referrals when completing a request.
Public classDsmlAuthRequestThe DsmlAuthRequest class indicates that access control for the requests be interpreted as though the requests are performed by the security principal identified by the Principal property.
Public classDsmlAuthResponseThe DsmlAuthResponse class is returned by SendRequest as a response to DsmlAuthRequest.
Public classDsmlDirectoryIdentifierThe DsmlDirectoryIdentifier class identifies an HTTP server.
Public classDsmlDocumentThe DsmlDocument class is an abstract class to construct or manipulate a DSML document. It is the base class for both DsmlRequestDocument and DsmlResponseDocument. DsmlDocument supports collections and indexes. Each item in its collection is an object derived from DirectoryOperation.
Public classDsmlErrorResponseThe DsmlErrorResponse class is generated by the server when a severe error occurs.
Public classDsmlInvalidDocumentExceptionThe DsmlInvalidDocumentException class is an exception that occurs when a DSML Request or Response document is not well-formed XML or cannot be validated with DSMLv2 schema.
Public classDsmlRequestDocumentThe DsmlRequestDocument class enables you to build a DSML request payload, such as AddRequest, ModifyRequest, or SearchRequest. It contains zero or more DirectoryRequest derived objects. The user may add, delete, modify, and enumerate the DirectoryRequest before sending to the server. DsmlRequestDocument can be used with any DSML Binding classes to transport the document, such as DsmlSoapHttpConnection.
Public classDsmlResponseDocumentThe DsmlResponseDocument class is a read-only collection generated as a response to a DsmlRequestDocument object that contains zero, or more, objects derived from DirectoryResponse.
Public classDsmlSoapConnectionThe DsmlSoapConnection class is an abstract class that cannot be instantiated. It enables stateless and stateful protocols to be handled similarly by providing session-oriented features.
Public classDsmlSoapHttpConnectionThe DsmlSoapHttpConnection class represents a connection to a DSML Gateway using SOAP over HTTP.
Public classErrorResponseExceptionThe ErrorResponseException class is an exception that occurs when the server returns an <errorResponse>.
Public classExtendedDNControlThe ExtendedDNControl class requests an extended form of the distinguished name of an Active Directory Domain Services object.
Public classExtendedRequestThe ExtendedRequest class passes extended LDAP operations to the server.
Public classExtendedResponseThe ExtendedResponse class is returned by SendRequest as a response to ExtendedRequest.
Public classLazyCommitControlThe LazyCommitControl class instructs the server to return the results of a DS modification command, such as add, delete, or replace, after it has been completed in memory, but before it has been committed to disk.
Public classLdapConnectionThe LdapConnection class creates a TCP/IP or UDP LDAP connection to Microsoft Active Directory Domain Services or an LDAP server.
Public classLdapDirectoryIdentifierThe LdapDirectoryIdentifier class creates a directory identifier for one or more LDAP servers.
Public classLdapExceptionThe LdapException class is an exception that occurs when LDAP returns an error code not included in ResultCode.
Public classLdapSessionOptionsThe LdapSessionOptions class is used to get or set various LDAP session options.
Public classModifyDNRequestThe ModifyDNRequest class modifies the distinguished name of an object. This class moves an object to a new parent and/or renames the object.
Public classModifyDNResponseThe ModifyDNResponse class is returned by SendRequest as a response to ModifyDNRequest.
Public classModifyRequestThe ModifyRequest class modifies the attributes of an existing directory entry.
Public classModifyResponseThe ModifyResponse class is returned by SendRequest as a response to ModifyRequest.
Public classPageResultRequestControlThe PageResultRequestControl class instructs the server to return the search result in the specified page size.
Public classPageResultResponseControlThe PageResultResponseControl class is a directory control used to pass page data from the server to the client.
Public classPartialResultsCollectionThe PartialResultsCollection class represents any partial results returned from a not-yet-completed asynchronous operation.
Public classPermissiveModifyControlThe PermissiveModifyControl class is used to modify the behavior of a ModifyRequest object.
Public classQuotaControlThe QuotaControl class is used to pass the security identifier (SID) of a security principle to retrieve quota-related data.
Public classReferralCallbackThe ReferralCallback class contains delegates used as referral callback methods.
Public classSearchOptionsControlThe SearchOptionsControl class is used to pass flags to the server to control search behavior.
Public classSearchRequestThe SearchRequest class initiates a search operation.
Public classSearchResponseThe SearchResponse class is sent by the server as a response to a SearchRequest object. This response contains zero or more SearchResultEntry objects, and zero or more SearchResultReference objects.
Public classSearchResultAttributeCollectionThe SearchResultAttributeCollection class is a collection of DirectoryAttribute objects.
Public classSearchResultEntryThe SearchResultEntry class contains an object returned in the result set.
Public classSearchResultEntryCollectionThe SearchResultEntryCollection class contains a collection of SearchResultEntry objects returned in a result set.
Public classSearchResultReferenceThe SearchResultReference class contains a single search reference returned by the server.
Public classSearchResultReferenceCollectionThe SearchResultReferenceCollection class contains a collection of SearchResultReference objects.
Public classSecurityDescriptorFlagControlThe SecurityDescriptorFlagControl class is used to pass flags to the server to control various security descriptor behaviors.
Public classSecurityPackageContextConnectionInformationThe SecurityPackageContextConnectionInformation class contains data about a secure connection.
Public classShowDeletedControlThe ShowDeletedControl class is used with SearchRequest to specify that the search results should include any deleted objects that match the search filter.
Public classSortKeyThe SortKey class stores sort criteria for use by sort controls.
Public classSortRequestControlThe SortRequestControl class is used with SearchRequest to instruct the server to sort the search results before returning them to the client application.
Public classSortResponseControlThe SortResponseControl class is used to pass sort data from the server to the client.
Public classTlsOperationExceptionThe TlsOperationException class is an exception that occurs in the StartTransportLayerSecurity method if the request fails.
Public classTreeDeleteControlThe TreeDeleteControl class is used with DeleteRequest to delete an entire subtree in the directory.
Public classVerifyNameControlThe VerifyNameControl class is used with an LDAP search function to specify the server used to verify the existence of an object.
Public classVlvRequestControlThe VlvRequestControl class is used to request virtual list view (VLV) support from the server.
Public classVlvResponseControlThe VlvResponseControl class is used to pass virtual list view (VLV) data from the server to the client.

Public delegateDereferenceConnectionCallbackThe DereferenceConnectionCallback delegate dereferences a connection that is no longer required. The connection was probably established through a successful call to the QueryForConnectionCallback or NotifyOfNewConnectionCallback delegate.
Public delegateNotifyOfNewConnectionCallbackThe NotifyOfNewConnectionCallback delegate is called if a new connection was created while chasing a referral.
Public delegateQueryClientCertificateCallbackThe QueryClientCertificateCallback delegate gets or sets the default callback function used to specify the client certificates while establishing an SSL connection.
Public delegateQueryForConnectionCallbackThe QueryForConnectionCallback delegate determines whether there is a cached connection available for use.
Public delegateVerifyServerCertificateCallbackThe VerifyServerCertificateCallback delegate gets or sets the default callback function used to verify server certificates when establishing an SSL connection.

Public enumerationAuthTypeThe AuthType enumeration is used to specify the authentication method to use on a connection.
Public enumerationDereferenceAliasThe DereferenceAlias enumeration specifies the process by which aliases are dereferenced.
Public enumerationDirectoryAttributeOperationThe DirectoryAttributeOperation enumeration specifies the operation to perform on a directory attribute.
Public enumerationDirectorySynchronizationOptionsThe DirectorySynchronizationOptions enumeration specifies the behavior of the search in a DirSyncRequestControl object.
Public enumerationDsmlDocumentProcessingThe DsmlDocumentProcessing enumeration specifies the processing method for a DSML document.
Public enumerationDsmlErrorProcessingThe DsmlErrorProcessing enumeration specifies how to proceed when an error occurs.
Public enumerationDsmlResponseOrderThe DsmlResponseOrder enumeration specifies the order in which responses are received.
Public enumerationErrorResponseCategoryThe ErrorResponseCategory enumeration contains possible DSML error responses.
Public enumerationExtendedDNFlagThe ExtendedDNFlag enumeration specifies the format of an extended distinguished name.
Public enumerationLocatorFlagsThe LocatorFlags enumeration specifies data required to locate a domain controller.
Public enumerationPartialResultProcessingThe PartialResultProcessing enumeration specifies the required type of partial results processing.
Public enumerationReferralChasingOptionsThe ReferralChasingOptions enumeration specifies if and how referral chasing is pursued.
Public enumerationResultCodeThe ResultCode enumeration specifies the operation result codes.
Public enumerationSearchOptionThe SearchOption enumeration specifies the search options which define how the search will behave.
Public enumerationSearchScopeThe SearchScope enumeration specifies the scope of a search.
Public enumerationSecurityMasksThe SecurityMasks enumeration specifies various security descriptor options.
Public enumerationSecurityProtocolThe SecurityProtocol enumeration is used to specify the security protocol used by a connection.