miércoles, 29 de octubre de 2008

Runas, Ejecutar procesos con el rol de otro usuario

¿A quien no le gustaría hacer algunas cosas en nombre de otra persona? Con mas razón aun, si nos ponemos en la piel de otra persona que tiene mas poder que nosotros. Y para muestra un botón:

Recuerdo de niño cuando entraba la fiebre en el colegio de los coches teledirigidos, que todos bajamos nuestros coches. Los había mas grandes, mas pequeños, algunos a penas consumían pilas, y otros se los comían. Entre todos los niños había uno que tenia un coche de gasolina. Ese coche que le había dejado su padre, que no se que leches y no se cuanto. Le odiábamos. No había manera de competir con el.

Eso si, cuando nos lo dejaba, la cosa cambiaba. Nos dábamos cuenta que quien ganaba era el que utilizaba ese coche, no dependía del piloto. Simplemente teníamos otra categoría dentro de la carrera solo por usar otro coche.

En la informática pasa algo parecido. Existen una serie de roles, perfiles, permisos, etc... que hacen que podamos hacer una cosa u otra. Y un escenario muy frecuente puede ser el siguiente.

Escenario
Active directory, en el cual habitan una serie de usuarios "rasos" en sus escritorios. Tenemos otro grupo de usuarios que tienen un rol superior, ya que tienen permiso para instalar software.

Problema
Siempre que queremos instalar algún software, tenemos que loguearnos con el usuario que tiene el privilegio para tal, y tenemos que cerrar la sesión de los demás usuarios. Esto lleva a cabo, que las tareas de mantenimiento se hagan un poco pesadas en algunas ocasiones.

Solución
"runas" , es un comando que permite ejecutar programas con las credenciales de otro usuario y aunque cumpla a la perfección, tiene un pequeño "pero". En la mayoría de las ocasiones es necesario lanzar una orden a través de la consola demasiado larga, y es fácil que nos equivoquemos al escribirla con la consiguiente perdida de tiempo.

Existe una pequeña aplicaron que permite añadir a la shell contextual de windows la orden "runas" y es muy practico y sencillo implementarlo.

- Para ello, descargaremos el paquete de instalación desde la siguiente dirección:

http://technet.microsoft.com/en-us/sysinternals/cc300361.aspx

- Descomprimimos el fichero .zip
- Lo ejecutamos desde la consola de comandos con el parámetro /reg.

c:\shellrunas /reg




- Esto lanzara un pequeño proceso de instalación.


- Una vez acabado el proceso nos indicara que el menú contextual ha sido registrado correctamente.



- A partir de ahora cuando saquemos el menú con textual a un fichero ejecutable, nos dejara una nueva opción (Run as differente user..)


- Al seleccionarla nos permitirá introducir las credenciales para ejecutar el comando con el rol de dicho usuario.


La verdad es que es un pequeño truquito de estos, que nos hace la vida un poco mas útil. Espero que os sirva.

Saludos

6 comentarios:

codigo82 dijo...

Una utilidad bastante curiosa, estos de sysinternals siempre sacando cosas buenas.

Gracias por la info.

Un saludo.

guisKAS dijo...

Hola solo quería comentar una cosa ... no seria mejor usar la opción "Ejecutar como"?? (esta justo encima de la opción nueva que muestras)

yo es lo que uso y es exactamente igual al rumas.( y no tienes que instalar nada en el equipo cliente).

por que cuando son 4 equipos no hay problema pero si son 400 pues es una lata tener que redistribuir esa instalación.

nada mas era eso^^

muchas gracias por tu blog que lo vengo leyendo desde hace mucho.

saludos

Anónimo dijo...

muy bueno!!

David dijo...

La verdad es que estos de sysinsternals son la leche. Unas utilidades buenisismas se pueden encontrar en su web.

Respecto a lo de runas y ejecutar como. Para lanzar aplicaciones con oto usuario da igual, pero runas es mucho mas potente ya que permite realizar mas tareas de administración en el active directory.

runas viene de "serie" en el sistema operativo, solo que es desde la linea de comandos. Esto solo es un plugin para tenerlo desde el menú contextual.

runas nos permite lanzar desde consolas mmc para gestión de directorio, asi como interactuar con otros dominios, cachear credenciales, etc...

Realmente es un comando muy potente.

Saludos

Anónimo dijo...

Howdy! This post couldn't be written much better! Looking through this post reminds me of my previous roommate! He constantly kept talking about this. I am going to send this information to him. Fairly certain he's going to
have a very good read. Many thanks for sharing!


Also visit my website Generateur de code psn

Anónimo dijo...

This web site truly has all of the information and
facts I needed concerning this subject and didn't know who to ask.

Here is my site; Psn code generator