Visual Basic.NET - Consultas LDAP con mas de una OU

 
Vista:

Consultas LDAP con mas de una OU

Publicado por Barri (2 intervenciones) el 09/03/2020 19:27:27
se que se puede utilizar GetObject("LDAP://CN=Usuario, OU=Users, DC=dominio, DC=es") mi problema es que pasa si tiene mas de una OU de usuarios tengo que buscar en cada una de ellas o se puede buscar en todas a la vez?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consultas LDAP con mas de una OU

Publicado por Phil Rob (1554 intervenciones) el 09/03/2020 19:45:20
Hola,

Testas el separador coma ente los OU : GetObject("LDAP://CN=Usuario, OU=Users, OU= OtroUser, OU= ..., DC=dominio, DC=es").

Si no funcionna, tienes que hacer una cicla For ...

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Consultas LDAP con mas de una OU

Publicado por Barri (2 intervenciones) el 09/03/2020 20:08:48
El problema es que si en la primera OU no encuentra el usuario se la pega


el directorio lo tengo con una OU=Usuarios y dentro de estas otras OU con Departamentos ejemplo OU= RRHH
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Phil Rob
Val: 3.353
Oro
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Consultas LDAP con mas de una OU

Publicado por Phil Rob (1554 intervenciones) el 09/03/2020 21:08:27
Siento.

Cuando he trabajado con los OU (hay mucho tiempo), he utilizado programas ds … en una línea de comando, con Shell.

Ejemplos :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Dim sTmp As String
‘ Comando dsadd para agregar :
               'dsadd user cn=TITI,OU=STUDENT,OU=LABOS,DC=eicw2,DC=be -disabled No -pwd MOTDEPASSE -canchpwd Yes -pwdneverexpires Yes -profile \\EICW2\Utilisateurs\TITI -hmdir \\EICW2\Utilisateurs\TITI -hmdrv X:
 
              For i As Integer = 0 To ATratar.Length - 1
                    sTmp = "dsadd user cn=" & ATratar(i).Dos & "," & SConnex & " -disabled No -pwd " & ATratar(i).MdP & " -canchpwd Yes -pwdneverexpires Yes -profile \\" & TP(13).ToString & "\" & TP(1).Substring(TP(1).IndexOf("\") + 1) & "\" & ATratar(i).Dos & "\Profil_" & ATratar(i).Dos & " -hmdir \\" & TP(13).ToString & "\" & TP(1).Substring(TP(1).IndexOf("\") + 1) & "\" & ATratar(i).Dos & " -hmdrv X:"
                    Shell(sTmp, AppWinStyle.Hide, True)
                Next
 
‘Comando dsrm para eliminar :
               SConnex &= ",OU=" & TP(5) & ",DC=" & TP(4).Substring(0, TP(4).IndexOf(".")) & ",DC=" & TP(4).Substring(TP(4).IndexOf(".") + 1)
                For i As Integer = 0 To ATratar.Length - 1
                    sTmp = "dsrm -noprompt cn=" & ATratar(i).Dos & "," & SConnex
                    Shell(sTmp, AppWinStyle.Hide, True)
                Next

Miras :
https://support.microsoft.com/es-es/help/322684/how-to-use-the-directory-service-command-line-tools-to-manage-active-d

No tengo servidor en este momento, no puedo testar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar