Uso de la función RunAs en Autoit

Prefacio

En un entorno de dominio, siempre encontramos restricciones de permisos de cuenta. Necesitamos ejecutar una cuenta privilegiada en una cuenta común para ejecutar un programa de comando específico para realizar operaciones de operación y mantenimiento.

Función RunAs

RunAs
使用不同的用户环境运行外部程序文件.
RunAs("用户名", "域", "密码", 注册标志, "程序"[, "工作目录"[, 显示标志[, 选项标志]]])

parámetro

parámetro Descripción
nombre de usuario Nombre de usuario de trabajo.
zona Dominio verificado.
contraseña La contraseña del usuario.
Marca de registro $ RUN_LOGON_NOPROFILE (0) -Inicio de sesión interactivo sin cargar archivos de configuración.
$ RUN_LOGON_PROFILE (1) -Inicio de sesión interactivo cargando archivos de configuración.
$ RUN_LOGON_NETWORK (2) -Utilizar credenciales de red.
$ RUN_LOGON_INHERIT (4) -Herrar el proceso de llamada del entorno , En lugar del entorno de usuario

Archivo de definición constante: "AutoItConstants.au3".
programa La ruta completa del programa en ejecución (tipo de archivo: EXE, BAT, COM o PIF, consulte la nota).
Lista de trabajo [Opcional] Directorio de trabajo. Si no se especifica, se utiliza @SystemDir. Esta ruta no es la ruta del programa.
Mostrar logotipo [Opcional] Muestra el estado durante la ejecución del programa:
@SW_HIDE = ocultar ventana (o usar la palabra clave predeterminada)
@SW_MINIMIZE = minimizar ventana
@SW_MAXIMIZE = maximizar ventana
Seleccionar bandera [Opcional] Controla la interacción entre el proceso principal y el proceso secundario.
$ STDIN_CHILD (0x1) = Proporciona un identificador para el flujo STDIN del proceso secundario
$ STDOUT_CHILD (0x2) = Proporciona un identificador para el flujo STDOUT del proceso secundario
$ STDERR_CHILD (0x4) = Proporciona un identificador para el niño El flujo STDERR del proceso
$ STDERR_MERGED (0x8) = Proporciona el mismo identificador para STDOUT y STDERR. Es decir, los indicadores $ STDOUT_CHILD y $ STDERR_CHILD.
$ STDIO_INHERIT_PARENT (0x10) = Proporciona el flujo STDIO del niño y del padre. Este indicador no se puede utilizar con ningún otro indicador STDIO. Combinado. Esta bandera es muy útil cuando la capa principal se compila como una aplicación de consola.
$ RUN_CREATE_NEW_CONSOLE (0x10000) = El proceso de la consola secundaria debe configurar su propia ventana en lugar de usar la ventana principal. Cuando la capa principal se compila como una aplicación de consola , Esta bandera es muy útil.

Archivo de definición constante: AutoItConstants.au3

Código de autoit

Podemos escribir asi

Local $sUserName = "linuxitellu"		;定义管理员账号
Local $sPassword = "AaBbCc123"			;定义管理员密码	
Local $Domain = "linuxitellu.com"		;定义AD域

; 在域环境中以管理员账号运行CMD
RunAs($sUserName, $domain, $sPassword, 0, "C:\Windows\system32\cmd.exe")	
; 定位直至CMD窗口被激活
WinWaitActive("管理员: C:\Windows\system32\cmd.exe") 	
; 输入注册表启动命令
Send ("regedit") 	
; 延时1秒
Sleep(1000)	
; 按回车键运行
Send ("{Enter}")	

Lo anterior es un ejemplo completo. Una vez activada la cuenta de administrador, ubíquese en la ventana cmd e ingrese una serie de acciones de simulación para iniciar el comando de registro

El punto y coma se usa para comentar una línea completa de código

Supongo que te gusta

Origin blog.csdn.net/no1xium/article/details/108147997
Recomendado
Clasificación