'* FileName: DialinUsers.vbs
'*=============================================================================
'* Script Name: DialinUsers.vbs
'* Created: 02/23/2007
'* Author: Jesse Hamrick
'* Company: XXXXXXXXXXXXXXXXX
'* Email: JHmarick@whokilledkenny.net
'* Web: [URL unfurl="true"]http://www.whokilledkenny.net[/URL]
'* Reqrmnts:
'* Keywords:
'*=============================================================================
'* Purpose: Script enumerate all accounts in AD and displays the user
'* name, account name, and contact info for users whom have
'* been granted dialup and VPN access.
'*=============================================================================
'*=============================================================================
'* DECLARE VARIABLES
'*=============================================================================
Dim objConnection
Dim objCommand
Dim objReordset
'*=============================================================================
'* Code
'*=============================================================================
Set objConnection = CreateObject("ADODB.Connection")
objConnection.Open "Provider=ADsDSOObject;"
Set objCommand = CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConnection
objCommand.CommandText = _
"<LDAP://dc=domainname,dc=com>;" & _
"(&(&(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)(msNPAllowDialin=TRUE))));" & _
"name,sAMAccountName,telephoneNumber,physicalDeliveryOfficeName,mail;subtree"
Set objRecordSet = objCommand.Execute
On Error Resume Next
While Not objRecordset.EOF
Wscript.Echo "AD Account:" & ", " &_
objRecordset.Fields("sAMAccountName") & ", " & "Email Address:" & ", " & objRecordset.Fields("mail")
WScript.Echo VbCrLf
objRecordset.MoveNext
Wend
objConnection.Close