Other Ways of Connecting and Retrieving Results
As mentioned earlier, there are a number of ways of authenticating an
ADO connection to Active Directory. The simplest is the way outlined
earlier using the Connection::Provider set with
the username and password as second and third arguments:
Set objConn = CreateObject("ADODB.Connection")
objConn.Provider = "ADSDSOObject"
objConn.Open "", _
"CN=Administrator,CN=Users,dc=mycorp,dc=com", _
"mypass"Because ADO is designed for databases, it is often necessary to
specify a number of other requirements when opening a connection.
These include a different provider, a different server, or a specific
database. All of these items can be set prior to opening the
connection. However, none of these make a difference to the AD
provider. If you wish to open a connection by setting these values in
the ConnectionString property, then do so as shown
in the following code:
Set objConn = CreateObject("ADODB.Connection")
objConn.Provider = "ADSDSOObject":objConn.ConnectionString = _
"DSN=;UID=CN=Administrator,CN=Users,dc=mycorp,dc=com;PWD=mypass"
objConn.OpenSemicolons separate the arguments, with the expected DataSourceName (DSN) specified as empty at the start of the string.
One important point: do not authenticate using both methods with the same connection—use one or the other. The following code uses both methods to illustrate what not to do:
Set objConn = CreateObject("ADODB.Connection") objConn.Provider = "ADSDSOObject" objConn.Open _ "DSN=;UID=CN=Administrator,CN=Users,dc=mycorp,dc=com;PWD=mypass", ...Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access