vb.net - El grupo "Usuarios del dominio" está vacío cuando uso la propiedad "miembro" de DirectoryServices
active-directory (1)
A menos que cambie la identificación de grupo principal de un usuario, el usuario no se almacena en el atributo de miembro del grupo Usuarios de dominio, sino que utiliza el hecho de que la ID de grupo principal está configurada en RID de usuarios de dominio para determinar la pertenencia a Usuarios de dominio. El caso normal es que el atributo de miembro de Usuarios de Dominio está vacío; requeriría que realice algunos cambios a la implementación predeterminada de Active Directory para que esto no sea el caso.
El grupo Usuarios del dominio usa un mecanismo "calculado" basado en la "ID del grupo primario" del usuario para determinar la membresía y no suele almacenar miembros como atributos vinculados de valores múltiples. Si se cambia el grupo primario del usuario, su membresía en el grupo Usuarios del dominio se escribe en el atributo vinculado para el grupo y ya no se calcula. Esto fue cierto para Windows 2000 y no ha cambiado para Windows Server 2003.
Estoy usando el siguiente código para obtener los miembros de un grupo en mi dominio:
Dim de As New DirectoryEntry("LDAP://" & GroupDN)
For Each user As String In CType(de.Properties("member"), IEnumerable)
GroupCollection.Add(Username, Username)
Next
Mi problema es que cuando GroupDN (el nombre distinguido del grupo) es " CN = usuarios del dominio, CN = usuarios, DC = Mydomain, DC = local ", el bucle For ... Each no se ejecuta, y cuando reviso el Declaración de propiedades de forma manual, tiene un recuento de cero. Esto parece funcionar para cualquier otro grupo en mi dominio, pero el grupo "Usuarios del dominio" debe contener a todos, y parece que no contiene a nadie.
Lo he comprobado, y el grupo enumera a todos correctamente en mis herramientas de Windows AD. ¿Hay algo obvio que me falta aquí? En una nota al margen, ¿hay una mejor manera de obtener todos los miembros de un grupo?