Aprende paso a paso cómo podemos permitir que una cuenta limitada ejecute una aplicación con privilegios de administrador
En muchas ocasiones, los administradores de sistemas de información (a.k.a. los informáticos) nos hemos encontrado con el siguiente problema: necesitamos que una cuenta de usuario limitada ejecute habitualmente una aplicación con privilegios de administrador. Esto puede suceder por muchos motivos: porque la aplicación no esté diseñada para la versión de sistema operativo que corre en la máquina, porque necesite acceso a carpetas protegidas, porque necesite tener control sobre algún servicio, o por muchos motivos más. Después de tomarnos unos minutos para maldecir al desarrollador que metió la pata, debemos ponernos manos a la obra y encontrar una solución. Lo primero que se nos suele ocurrir es crear un usuario con privilegios, darle la contraseña al usuario que debe ejecutar la aplicación y enseñarle cuándo debe usarla. Pero después, hay que rezar cada semana para que no use esa contraseña para instalar el virus que se ponga de moda esos días. Si además el usuario está conectado por RDS a un servidor Cloud, mejor entonces, rezar cada día.
Una aplicación muy útil
Afortunadamente, nuestros amigos BlueLife y Velociraptor de Sordum crearon hace unos años una pequeña aplicación la mar de útil para estos casos. Se trata de RunAs Tool, ahora la versión es la 1.4. Esta herramienta gratuita está muy bien diseñada y es muy sencilla de usar. Sin embargo, creo que el manual de uso no lo transmite demasiado bien [lo siento Velociraptor, eres buen programador pero tienes que mejorar en el apartado de la divulgación]. Así que hoy me he decidido a crear un paso a paso más claro, y ya que estamos, en castellano.
Paso a paso
En primer lugar, descargaremos los instaladores de la página oficial. Vienen dos ejecutables, uno para sistemas de 32 bits y otro para sistemas de 64 bits. Hay que tener en cuenta que cuando lo lancemos se instalará en la carpeta C:\Program Files\RunAs Tool, pero no nos creará el acceso directo en el menú Inicio; si lo necesitamos tendremos que hacerlo manualmente tras la instalación. Al acabar, el sistema nos pedirá que nos identifiquemos con una cuenta con privilegios, y tras introducir la contraseña se nos abrirá la ventana del modo Editor:
Asistente de traduccción
Es cierto que la traducción no es perfecta, pero estos chicos alemanes han hecho un esfuerzo por ponérnoslo fácil. Incluso incluyen un asistente de traducción en la opción Languages del menú Opciones, así que os animo a colaborar con ellos.
Como vemos en la ventana anterior, la zona izquierda nos invita a arrastrar y soltar el archivo que queremos ejecutar con privilegios. Por tanto nos iremos a la carpeta donde se encuentra el ejecutable y lo arrastraremos a esa ventana. Por supuesto también podemos crear accesos a archivos de procesamiento por lotes, pero… ¡Ojo! Si creamos un acceso con privilegios a un archivo BAT, un usuario hostil podría aprovechar ese archivo para editarlo y ejecutar con privilegios lo que le diese la gana. En este minitutorial me voy a limitar a crear un acceso con privilegios a la aplicación SpaceSniffer de Umberto Uderzo. Este programa (que me encanta) nos crea un mapa visual del uso de espacio en disco; necesita privilegios para poder leer todas las carpetas del sistema de archivos y calcular el espacio que ocupan. Así que nos vamos a la carpeta del programa y arrastramos el ejecutable a la ventana de RunAs Tool, obteniendo lo siguiente:
Si nos apetece podremos cambiar el título de la aplicación, añadir parámetros o cambiar los modos de ejecución. Para la necesidad que nos ocupa, podemos dejar los parámetros predeterminados, en especial el que indica Ejecutar como administrador. Ahora sólo nos queda un paso: crear el acceso directo, lo cual se hace con la opción Crear Atajo del menú Editar, o directamente con el menú contextual que nos aparece al clicar con el botón derecho sobre el icono del programa:
¡Listo para empezar a usar!
¡Y ya está! Podemos cerrar la aplicación RunAs Tool y empezar a usar el acceso directo que ejecutará el programa correspondiente, en este caso SpaceSniffer, con privilegios de administrador. Si le echáis un vistazo al acceso directo veréis que éste apunta al ejecutable RunAsTool.exe con un parámetro de tres letras (generadas aleatoriamente por RunAs Tool), y es ese ejecutable el que se encarga de llamar al programa con elevación. Recordad que técnicamente los programas se están ejecutando con el usuario administrador que hemos usado al entrar en RunAs Tool, así que no os alarméis cuando auditéis el sistema y veáis que ese usuario con privilegios está iniciando sesión y ejecutando programas.
Sobre los accesos directos
Un par de últimos apuntes sobre el uso de accesos directos creados con RunAs Tool.
1- Debemos iniciar la aplicación con la cuenta de usuario sin privilegios, porque los identificadores de esos accesos directos se guardan en la rama de esa cuenta de usuario en el registro de Windows; si tratamos de usar el mismo acceso directo desde otra cuenta de usuario, RunAs Tool no reconocerá el identificador y nos mostrará un error indicando que no encuentra el archivo.
2- El otro apunte, es que cuando creamos el acceso directo debemos recordar que lo estamos haciendo con la cuenta de usuario con privilegios, así que la navegación por las bibliotecas del sistema serán las de esa cuenta de usuario elevada y no las de la cuenta de usuario limitada. Si queremos poner el acceso directo en el escritorio de la cuenta de usuario limitada, lo más fácil es navegar hasta la carpeta C:\Usuarios\nombre\Escritorio y guardarlo allí; en cuanto lo hagamos, aparecerá en el escritorio de Windows y podremos ubicarlo donde nos plazca.
Más info
Para concluir, os animo a que comentéis y compartáis vuestras experiencias en la administración de sistemas. En cualquier caso, estamos abiertos a sugerencias para mejorar.
Síguenos también en LinkedIn
Excelente información, genial la aplicación fácil de utilizar, muchas gracias.
Gracias por leernos y comentar