Anuncios

Bienvenidos sean a este post, hasta ahora hemos visto como poder ubicar un usuario (o un objeto) dentro de un contenedor distinto pero de una forma un poco engorrosa.

Anuncios

Esto es asi porque debemos convertir a mano la ubicacion para que el script pueda cargarlo correctamente pero hoy nos centraremos en como poder tomar el path de nuestro contenedor y convertirlo automaticamente para nuestro codigo, para ello haremos una breve explicacion, para nuestroos ejemplos anteriores utilizamos la siguiente ubicacion:

Tinchicus -> Usuarios -> Argentina -> IT

Lo cual equivaldria a:

laboratorio.local/Tinchicus/Usuarios/Argentina/IT
Anuncios

Pero como obtenemos este dato? Esto es facil para ello deben ir en la herramienta Active Directory Users and Computers -> Ver -> Advanced Features

Anuncios

Una vez habilitado van hasta el contenedor final que quieren ver su ubicacion, presionan el boton derecho y seleccion Propiedades

Nota: Tambien elegir el contenedor y presionar Alt+Enter para ver las propiedades.
Anuncios

Nos aparecera el siguiente cuadro e iremos a la pestaña Object

Anuncios

Con esto pudimos obtener la direccion o el path para nuestro contenedor pero como lo convertimos? Una es de forma manual, es decir quitamos el dominio (laboratorio.local), y luego tomamos cada una de las partes divididas por la barra le reemplazamos la barra por ou= y lo hacemos de atras hacia adelante, y cada ou separado con una coma, quedaria de la siguiente manera:

ou=IT,ou=Argentina,ou=Usuarios,ou=Tinchicus

Como pueden ver puede ser algo engorroso y con mayores ubicaciones podria generar una confusion importante pero la otra alternativa seria usar el siguiente codigo:

ouconv.vbs

Const cTitulo = "Convertidor de path a OU v.1.0"
dim path, OU, final

path = inputbox("Ingresa el Path",cTitulo)

OU = ConvertirOU(path)

final = inputbox("Tu OU convertido",cTitulo,OU)

function ConvertirOU(ByVal camino)
	dim c, texto
	c = split(camino,"/")
	for a=ubound(c) to 1 step -1
		texto = texto & "ou=" & c(a) & ","
	next
	texto = mid(texto,1,len(texto)-1)
	ConvertirOU = texto
end function
Anuncios

En este caso crearemos una constante para el titulo de nuestros inputbox y tambien las tres variables que usaremos en el script (path, OU y final), nuestro siguiente paso sera usar la variable llamada path para almacenar el “path” de nuestro contenedor, luego usaremos la variable llamada OU donde almacenaremos el resultado de la funcion ConvertirOU a la cual le enviaremos el valor ingresado en path, por ultimo mostraremos por medio de otro inputbox el resultado de nuestra funcion pero porque otro inputbox y no un msgbox? porque para este caso nos dara la posibilidad de copiar el texto que le enviemos como default, pasemos a hablar sobre la funcion.

Anuncios

La funcion no es dificil pero tiene su pequeña complejidad, en este caso recibira el valor y lo almacenara en camino, luego tendremos nuestras dos variables que usaremos, para nuestro siguiente paso usaremos a split sobre el valor informado en camino y lo dividiremos por medio de las barras y lo almacenaremos en c, nuestro siguiente paso sera usar un bucle for donde contaremos desde el valor mas grande de c, recuerden que ahora es un array, hasta 1 utilizando el step -1, esto nos permitira invertir el orden de los valores contenidos, dentro del bucle llenaremos a texto primero con lo que tenia anteriormente y luego con ou= seguido del valor que contiene c en la posicion que pasa la variable a y por ultimo le agregamos una coma, esto lo hara hasta que se cumpla la condicion, una vez salido del bucle nuestro valor almacenado en texto esta incorrecto porque tendra una coma de mas para ello usamos esta linea:

texto = mid(texto,1,len(texto)-1)

En este caso usamos a mid para que tome a texto, y desde la posicion 1 hasta la penultima posicion tome el valor que contenga y lo asigne a texto, esto nos eliminara la ultima coma, por ultimo devolvemos el valor almacenado en texto, vamos a probarlo en el siguiente video

Anuncios

Como pueden observar de una manera muy simple pudimos convertir el path de nuestro contenedor en algo util para nosotros ya que podemos usarlo de esta manera o integrarlos a nuestros scripts pero eso es algo que veremos en el proximo post.

Anuncios

En resumen, hoy hemos visto como se pueden ubicar objetos en otros contenedores, como convertirlo manualmente, como crear un codigo que permita hacer esa tarea por nosotros y algunos tips para futuro, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Tengo un Patreon donde podes acceder de manera exclusiva a material para este blog antes de ser publicado, sigue los pasos del link para saber como.

Tambien podes comprar mi libro sobre VBscript en Amazon

Tambien podes donar

Es para mantenimiento del sitio, gracias!

$1.00