Tenemos que crear un fichero con el siguiente código:
On Error Resume Next
Const ADS_SCOPE_SUBTREE = 2
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE
objCommand.CommandText = _
"SELECT Name FROM 'LDAP://dc=MiDominio,dc=com' WHERE objectCategory='user' " & _
"AND msNPAllowDialin = TRUE"
Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
Do Until objRecordSet.EOF
Wscript.Echo objRecordSet.Fields("Name").Value
objRecordSet.MoveNext
Loop
El fichero lo debermos guardar con la extension vbs, por ejemplo "accesos.vbs"
Para ejecutar la consulta hay que ir al interprete de comando y escribir
"cscript. accesos.vbs > users.txt"
Antes de ejecutarlo deberíamos modificar "SELECT Name FROM 'LDAP://dc=MiDominio,dc=com' deberíamos y sustituir "MiDominio" y el "com" por el equivalente de nuestro AD.
Esta búsqueda se centrará en los usuarios que tengan activa la variable "Permitir acceso" de la siguiente pantalla:
Para ver los resultadados hay que ir al fichero generado "users.txt"
Obtendremos un resultado del estilo: