usuarios script sacar reporte para obtener miembros listar lista grupo exportar descargar csvde active perl active-directory

script - usando perl para obtener usuarios del grupo AD



sacar un reporte de usuarios de active directory (1)

He intentado que esto imprima a todos los miembros en "usuarios de dominio". El problema es que solo imprime una pequeña porción de ellos, luego simplemente se detiene. No estoy seguro por qué. ¿Alguien puede arrojar algo de luz sobre el problema?

#!/usr/bin/perl use Net::LDAP; my $uid = "cn=account,cn=users,dc=domain,dc=local"; my $bindPass = "password"; my $ldapServer = "ldap://server.domain.local"; # connect to ldap server $ldap = Net::LDAP -> new ($ldapServer) || die "Could not connect to server/n"; # bind to ldap server $ldap -> bind($uid, password => $bindPass); # search for group $mesg = $ldap -> search(filter => "(&(cn=Domain Users))", base => "dc=domain,dc=local"); $entry = $mesg -> entry; # @members = $entry -> get_value (''member;Range=0-*''); #the above entry when uncommented doesn''t work either. @members = $entry -> get_value (''member''); foreach $thing (@members) { print "$thing/n"; }


De la red :: Documentos LDAP :

sizelimit => N

A sizelimit that restricts the maximum number of entries to be returned as a result of the search. A value of 0, and the default, means that no restriction is requested. Servers may enforce a maximum number of entries to return.

Es muy posible que su servidor AD tenga una restricción configurada. Intente comprobar $mesg->error() después de la búsqueda.

Puede tener más éxito si usa ldap://server.domain.local:3268/ como su URL. AD usa un "mini" servidor ldap en ese puerto para hablar con servidores replicados (google "catálogo global"); no verá todos los atributos en ese servidor, pero tal vez sea menos restrictivo en cuanto al número máximo de entradas.