lsrunase/如何用批处理实现以管理员的权限让域用户以管理员运行特定程序!

   在某些情况下,为了安全起见,大部分公司都会使用域控制器或只会给员工电脑user的用户权限,这样做能大大提高安全性和可控性,但由此也带来了一些困扰。比如:某些特定的部门(如财务,物流)没有管理员权限,但工作又需要使用特定的插件或程序,且该程序或插件又必须以管理员身份运行,在这种情况下,我们如果将用户的权限提升为管理员,那样会增加安全风险而且可能引起很多不可控的情况。

   这个时候我们就需要一个脚本帮助我们来自动以管理员的账号权限去运行特定的程序了!虽然windows系统自带有runas命令,但是这个不能免除第一次运行脚本的时候需要手动输入管理员帐户密码,所以改用一个第三方的程序lsrunase,可以较完美的替代 runas,还可以避免像sanur和lsrunas一样直接将密码明文保存在脚本中。

用法:
lsrunase /user:administrator /password:41BngA== /domain: /command:notepad.exe /runpath:c:
所有的参数必须齐全,其中:
user 为运行的账号
password 为密码加密后的字串
domain 为机器名或域名,也可留空代表本机
command 为要运行的程序名,如果携带参数需要在命令的首尾加引号
runpath 为程序启动的路径
相关页面(如果不能用了就自己到网上找吧!):
http://www.moernaut.com/default.aspx?item=lsrunase

 

@echo off

:input
set dir=D:\Documents\Downloads
set name=python-3.6.5.exe

::如果需要用户手动输入请把下面获取用户输入命令的注释去掉!

::echo 请输入你要安装程序的目录!
::set /p dir=
::echo 请输入你要安装程序的名字!
::set /p name=

set path=%dir%\%name%
if exist %path% (echo 正在为你安装程序,请稍等。。。)else (echo 你输入的路径不存在请重新输入!!&goto:input)

::lsrunase.exe 是第三方程序,所以等编译这个bat为可执行程序(exe)的时候需要把这个第三方程序一起嵌入到这个可执行程序中,不然的话就要把这个bat和lsrunase放在同一个文件夹中!

lsrunase.exe /user:administrator /password:7F1zi71Wq/2J /domain: /command:"%path%" /runpath:%dir%

::pause

 

你可能感兴趣的:(批处理脚本)