Búsqueda de sitios web

Cómo utilizar el comando RunAs en Windows


El comando RunAs se puede usar para ejecutar programas y comandos como un usuario diferente al que inició sesión. Runas se puede usar en todas las versiones de Windows y se remonta a Windows 2000. A menudo, puede hacer clic derecho en un programa en la interfaz de usuario y seleccione "Ejecutar como administrador". Que es básicamente el mismo comportamiento.

Los administradores suelen utilizar runas para ejecutar comandos u otras tareas con privilegios de administrador mientras inician sesión en una cuenta sin privilegios de administrador. Pero el comando no se limita a los administradores, también puede usarlo para ejecutar programas como otro usuario.

En este artículo, veremos cómo utilizar el comando Runas.

Cómo utilizar RunA

El comando RunAs viene con diferentes parámetros que podemos utilizar para ejecutar programas como un usuario diferente. Pero antes de profundizar en las diferentes opciones, primero echemos un vistazo a un ejemplo rápido de cómo ejecutar un comando como administrador.

Para abrir el símbolo del sistema como administrador solo necesitamos especificar el usuario, en este caso la cuenta de administrador local, y el programa que queremos ejecutar, cmd en este caso.

# Start cmd as admin
runas /user:admin cmd

Después de haber escrito el comando, se le solicitará la contraseña, después de lo cual se ejecutará el comando.

Parámetros

Una vez explicados los conceptos básicos, echemos un vistazo más de cerca a las diferentes opciones que tenemos. Hay un par de parámetros que podemos usar con el comando runas:

/user:

Especifica la cuenta de usuario que desea utilizar

/noprofile

No cargues el perfil del usuario, esto hará que la aplicación se cargue más rápido. Por defecto se utiliza /perfil

/env

Utilice el entorno de red actual en lugar del entorno local del usuario

/netonly

Las credenciales son sólo para acceso remoto

/savecred

Guarde la contraseña en el perfil del usuario para poder usarla más tarde (¡riesgo de seguridad!)

/smartcard

Utilice esta opción si utiliza tarjetas inteligentes para la autenticación

/showtrustlevel

Mostrar niveles de confianza disponibles

/trustlevel

Nivel de confianza para ejecutar el programa

El comando siempre comienza con los parámetros que desea utilizar, seguidos del comando que desea ejecutar. El parámetro /user: es, por supuesto, obligatorio y especifica el usuario con el que desea ejecutar el comando.

# Runas usage
runas <parameters> /user:<username> <command>

El parámetro /savecred almacena las credenciales (nombre de usuario y contraseña) en el perfil del usuario en %appdata%\Microsoft\Credentials. Ahora bien, esto puede parecer útil para scripts, etc., pero es básicamente un gran riesgo para la seguridad. No hay nada que impida que el usuario u otros programas utilicen estas credenciales para otra tarea. Así que tenga mucho cuidado al utilizar esta opción.

Ejecutar como ejemplos

A continuación les daré un par de ejemplos de cómo usar el comando runas.

Ejecutar como administrador (de dominio)

Un caso de uso común del comando es ejecutar programas o abrir herramientas administrativas con privilegios de administrador. Puede utilizar la cuenta de administrador local o la cuenta de administrador del dominio para esto.

# Run commandprompt as local admin
Runas /user:administrator cmd

# Run commandprompt as domain admin
Runas /user:lazyadmin\administrator cmd

Abra una consola MMC como administrador

Si desea abrir Services.msc como administrador, no puede simplemente especificar Services.msc como parámetro del programa. Deberá agregar MMC delante del comando:

# Open services.msc
Runas /user:administrator "MMC services.msc"

Abrir un programa como otro usuario

Cuando escribe chrome.exe en el cuadro de diálogo de ejecución (tecla de Windows + R), se abrirá la aplicación. Pero cuando desee ejecutar estas aplicaciones como un usuario diferente, deberá especificar la ruta completa de las aplicaciones:

Runas /user:administrator "C:\Program Files\Google\Chrome\Application\chrome.exe"

Algunos programas no se pueden abrir como un usuario diferente. Por ejemplo, no es posible abrir el explorador o las impresoras como administrador (aunque existe una solución alternativa).

Ejecución de PowerShell como

El comando runas es antiguo y se puede utilizar en PowerShell. Pero también existe un equivalente de PowerShell que podemos usar para ejecutar scripts y comandos de PowerShell como un usuario diferente. Para ejecutar comandos como un usuario diferente, simplemente abrimos una nueva ventana de PowerShell dentro del contexto del otro usuario.

Cuando desee ejecutar un script o comando de PowerShell como administrador, puede utilizar el parámetro -Verb runAs. No es necesario especificar el usuario administrador. También es posible ejecutar un script o comando como un usuario diferente. Para esto, necesitaremos usar el verbo RunAsUser

# Run as admin
Start-Process powershell -Verb RunAs

# Run as other user
Start-Process powershell -Verb RunAsUser

Para proporcionar las credenciales para la cuenta de administrador, puede almacenar las credenciales en una variable, lo que resulta útil si necesita usarla nuevamente más adelante. O simplemente use un comando de una sola línea

# Store the credentials
$Cred = (Get-Credential)
Start-Process Powershell "-File c:\path\to\script.ps1" -Credential $Cred

Start-Process Powershell "-File c:\path\to\script.ps1" -Credential (Get-Credential)

Terminando

Runas es un comando simple que los administradores suelen utilizar para abrir rápidamente herramientas administrativas. Solo tenga cuidado al almacenar las credenciales.

Si tiene alguna pregunta, simplemente deje un comentario a continuación.

Artículos relacionados