vista-tecnica

Échale un vistazo técnico a Windows Vista
Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G.

En muchas ocasiones nos encontramos con esta situación: Un usuario limitado que necesita ejecutar una aplicación en su equipo con privilegios administrativos, pero no queremos que conozca las credenciales de otro usuario administrador.

En Windows Vista, con UAC habilitado podemos hacer que por defecto el sistema ejecute una aplicación como administrador (Propiedades del acceso directo > Avanzado > Ejecutar como administrador), o si no, simplemente con el botón derecho seleccionamos el menu Ejecutar como Administrador...

En ambos casos, el sistema solicitará la contraseña del administrador. Pero si no queremos indicarle al usuario cuales son estas credenciales, entonces que opciones tenemos.

La primera opción es otorgarle permisos administrativos directamente al usuario, sin embargo ésto no es recomendable ya que estaríamos dándole más privilegios de los que realmente necesita y podíra ejecutar acciones que no queremos, por ejemplo, instalar programas o modificar la configuración del equipo. Otra opción es modificar manualmente los permisos necesarios tanto a nivel de archivos como de registro para que la aplicación se pueda ejecutar correctamente. Esto puede ser viable siempre y cuando el producto se mantenga mas o menos estable, es decir, que con una actualización no se altere la estructura de permisos necesarios. Además tendríamos que averiguar qué carpetas, archivos y claves de registro requiere acceso la aplicación, por lo tanto el trabajo necesario puede llegar a ser bastante laborioso. Las herramientas FilemonRegmon y ProcessExplorer de Microsoft Sysinternals, nos pueden ayudar en estas tareas.

Pero nos queda una última opción gracias a la combinación del programa runas.exe y el uso de accesos directos.

Por ejemplo, si queremos hacer que un usuario limitado ejecute Internet Explorer como un administrador, pero sin tener que introducir las credenciales cada vez que inicia el programa, haríamos lo siguiente:

  1. Crear un nuevo acceso directo a Internet Explorer en el escritorio (u otra ubicación)
  2. En la linea de ejecución del asistente escribimos: runas.exe /user:Administrator /savecred "C:\Program Files\Internet Explorer\iexplore.exe"
  3. Escribimos el nombre del acceso directo, por ejemplo "Internet Explorer Admin" y lo guardamos.

 

Cuando ejecutemos el acceso directo por primera vez, el sistema nos solicitará las credenciales del usuario Administrador, pero gracias al parámetro /savecred, la contraseña se almacena localmente y no se volverá a solicitar, permitiendo así que un usuario limitado ejecute una aplicación como un administrador, sin tener que conocer previamente las credenciales administrativas.

Si, vamos un poco más alla, podemos hacer que un usuario limitado pueda cambiar las propiedades del Firewall de Windows Vista, o abrir una consola administrativa. El procedimiento es similar al anterior y la única diferencia es la línea de ejecución que tendrá el acceso directo:

  • runas.exe /user:Administrator /savecred "mmc.exe C:\AdminCon.msc" (Si la consola administrativa AdminCon.msc está ubicada en el disco C:)
  • runas.exe /user:Administrator /savecred "control.exe /name Microsoft.WindowsFirewall"

Si el usuario administrativo no es local, sino un usuario de dominio, entonces cambiamos /user:Administrator por /user:DOMINIO\USUARIO_ADMINISTRADOR

A continuación os dejo la lista de subelementos del panel de control que podemos ejecutar directamente desde la línea de comandos o desde un acceso directo:

Microsoft.AddHardware

Microsoft.PenAndInputDevices

Microsoft.AdministrativeTools

Microsoft.PeopleNearMe

Microsoft.AudioDevicesAndSoundThemes

Microsoft.PerformaceInformationAndTools

Microsoft.AutoPlay

Microsoft.Personalization

Microsoft.BackupAndRestoreCenter

Microsoft.PhoneAndModemOptions

Microsoft.BitLockerDriveEncryption

Microsoft.PowerOptions

Microsoft.Bluetooth

Microsoft.Printers

Microsoft.CardSpace

Microsoft.ProblemReportsAndSolutions

Microsoft.ColorManagement

Microsoft.ProgramsAndFeatures

Microsoft.DateAndTime

Microsoft.RegionalAndLanguageOptions

Microsoft.DefaultPrograms

Microsoft.ScannersAndCameras

Microsoft.DeviceManager

Microsoft.SecurityCenter

Microsoft.EaseOfAccessCenter

Microsoft.SpeechRecognitionOptions

Microsoft.FolderOptions

Microsoft.SyncCenter

Microsoft.Fonts

Microsoft.System

Microsoft.GameControllers

Microsoft.TabletPCSettings

Microsoft.GetPrograms

Microsoft.TaskbarAndStartMenu

Microsoft.GetProgramsOnline

Microsoft.TextToSpeech

Microsoft.IndexingOptions

Microsoft.UserAccounts

Microsoft.Infrared

Microsoft.WelcomeCenter

Microsoft.InternetOptions

Microsoft.WindowsAnytimeUpgrade

Microsoft.iSCSIInitiator

Microsoft.WindowsDefender

Microsoft.Keyboard

Microsoft.WindowsFirewall

Microsoft.MobilityCenter

Microsoft.WindowsSideShow

Microsoft.Mouse

Microsoft.WindowsSidebarProperties

Microsoft.NetworkAndSharingCenter

Microsoft.WindowsUpdate

Microsoft.OfflineFiles

Microsoft.ParentalControls

A pesar de esto, hay que tener en cuenta que este procedimiento no impide que un usuario limitado modifique el acceso directo y ejecute otros componentes o aplicaciones que no queremos que ejecute, por lo tanto, es recomendable utilizar esta alternativa sólo si se puede garantizar que el usuario no tenga acceso a otros componentes o a ejecutar otras aplicaciones, por ejemplo, limitando su acceso mediante políticas de grupo o modificando las ACE en el acceso directo.

Publicado: 21/7/2008 16:43 por Joshua Saenz con 11 comment(s)

Comparte este post:

Comentarios

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Tuesday, July 22, 2008 8:03 PM

muy buen y util aporte,de hecho lo hice en la maquina de un cliente pero el problema se regenero cuando reinicie la pc y al ejecutar el programa me pidio nuevamente la contraseña del administrador.

tenes idea si hay alguna forma de que me pida la contraseña del administrador una unica vez y de ahi en adelante no tenga que entrar nuevamente a la pc cada vez que se reinicie?

Gaston

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Monday, July 28, 2008 3:52 PM

Que tal Gaston. Si ejecutas la aplicación con el parametro /savecred cada vez, no deberia de pedirte las credenciales de nuevo. Las credenciales se almacenan localmente en el perfil de usuario.

Joshua Saenz

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Tuesday, July 29, 2008 3:16 AM

hola bueno pues yo lo que busco es como poder ejecutar aplicasiones que requieren privilegios de administrador,pero sin ser administrador

bueno de antemano grasias

javier

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Wednesday, August 27, 2008 8:10 PM

Algo parecido que funcione en Windows Vista?

Unregistry

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Thursday, August 28, 2008 6:50 AM

Me explayo: SO Windows VISTA. Necesito correr un programa con privilegios de Administrador, sobre un Usuario no administrador, pero evitando tener que poner la contraseña de Administrador en cada ocasion (se trata de una pc ubicada en un local comercial en donde no me encuentro TODO el tiempo). Ademas, y por cuestiones de seguridad, NO DESEO DESHABILITAR UAC. Obviamente no tengo inconveniente en poner la clave de administrador la primera vez que corre el programa, pero necesito que de alguna forma esa clave quede memorizada para las subsiguientes veces. Si alguien tiene la solucion quedaré muy agradecido.

Unregistry

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Wednesday, November 19, 2008 12:48 AM

Puedes usar un programa para estos propósitos. Buscalo en google, se llama "RUNASSPC" y es gratuito para uso particular.

Wilmach

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Tuesday, March 31, 2009 2:48 PM

Joshua Saenz eso que explica esta exelente de hecho cosas así lo que no tan bien explicadas vienen en la ayuda de windows, pero ahora la cuestion es que no me esta salvando el pass, cuando cierro sesion e inicio de nuevo me vuelve a pedir el pass del administrador, mientras permanesco en el usuario despues de ejecutarlo por primera vez y haberle puesto el pass me pincha y mientras no cierre sesion esta apto para trabajar ejecutandoce cuantas veces quiera, el problema esta en cuanto cierro sesion o reinicio, ya probe con el /savecred, /savedcred y hasta con /savedcreds y nada hermano.

Si podrias ayudarme te lo agradeceria.

Vaya si cualquiera puede tirarme el cabo que me avise, mi correo es landera84@gmail.com

Landera

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Friday, May 22, 2009 8:20 AM

Ante todo y varios meses despues, quiero agradecer a Wilmach por su colaboracion. Lamentablemente debo decir que me pasa los mismo que comenta Landera. he probado el comando RunAs y el programa RUNASSPC tanto en Windows Vista como en Server 2008 y en todos los casos me sucede lo mismo: mientras la pc no es reiniciada todo funciona a la perfeccion, pero luego de reinicar, el comando RunAs vuelve a pedir ingresar la contraseña, y el programa RUNASSPC saca un cartel que dice algo asi como "acceso denegado" (evidentemente no pudo ingresar la contraseña). Si alguien conoce algun metodo efectivo agradecere enormemente el aporte.

Unregistry

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Friday, June 19, 2009 5:39 PM

Muy buenas, si todavía siguen buscando una herramienta para encriptar contraseñas y ejecutar programas como administrador hay uno llamado supercrypt. En principio no tiene mala pinta.

Un saludo.

Carlos

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Thursday, February 11, 2010 5:12 PM

Excelente tutorial acerca de ejecutar programas con derechos de administrador sin pedir contraseña para un usuario estandar. Me has sacado de un apuro. Salu2 ! Sigue asi !

Daniel

# re: Como ejecutar una aplicación con privilegios administrativos en perfiles limitados por Josh Sáenz G. @Monday, April 12, 2010 6:55 PM

Muchas gracias por tu aportación, ha servido mucho a uno más de tus colegas.

Saludos!

David Juárez