Pregunta

Estoy tratando de hacer una búsqueda LDAP sin embargo, sigo obteniendo el siguiente error:

Unhandled Exception: System.Runtime.InteropServices.COMException (0x80072024): T
he administrative limit for this request was exceeded.

   at System.DirectoryServices.SearchResultCollection.ResultsEnumerator.MoveNext
()
   at System.DirectoryServices.DirectorySearcher.FindOne()

Aquí está el código: (el error se lanza en Findone ())

        DirectoryEntry dirEntry = new DirectoryEntry("LDAP://myldap.com:1701/ou=People,o=My Company,c=CA", "", "", AuthenticationTypes.Anonymous);
        DirectorySearcher dirSearcher = new DirectorySearcher(dirEntry);

        string filter = "mail";
        string filterValue = "my.email@mycompany.com";

        dirSearcher.Filter = string.Format("({0}={1})", filter, filterValue);

        SortOption sortOption = new SortOption(filter, SortDirection.Ascending);

        dirSearcher.Sort = sortOption;
        dirSearcher.PropertiesToLoad.Add("uid");
        dirSearcher.SearchScope = SearchScope.Subtree;

        SearchResult result = dirSearcher.FindOne();

        DirectoryEntry directEntry = result.GetDirectoryEntry();
        Console.WriteLine("Result: {0}", directEntry.Properties["uid"].Value.ToString());

¿Alguna idea de cómo moverse?

¿Fue útil?

Solución 2

eliminó esta línea y funciona:

dirSearcher.PropertiesToLoad.Add("uid");

Debe haber estado agarrando el UID de cada resultado en lugar de solo un resultado coincidente y, por lo tanto, estaba pasando el límite de administración.

Otros consejos

Muchas implementaciones de servidores LDAP tienen límites de cuántos resultados se devolverán en una consulta.

AD predeterminado a 1000 o 2000. Olvido de vez en cuando.Los valores predeterminados de EDIRECTORY no tienen límite.Otros varían.

Puede solicitar a los administradores que cambien el límite, o de lo contrario, haga su código para que reciba solo una página (o número limitado de resultados) a la vez.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top