zoukankan      html  css  js  c++  java
  • Runas命令:能让域用户/普通User用户以管理员身份运行指定程序。

    注:本文由Colin撰写,版权所有!转载请注明原文地址,谢谢合作!

    在某些情况下,为了安全起见,大部分公司都会使用域控制器或只会给员工电脑user的用户权限,这样做能大大提高安全性和可控性,但由此也带来了一些困扰。

    比如:某些特定的部门(如财务,物流)没有管理员权限,但工作又需要使用特定的插件或程序,且该程序或插件又必须以管理员身份运行,在这种情况下,我们如果将用户的权限提升为管理员,那样会增加安全风险而且可能引起很多不可控的情况。
    在这种情况下,我们可以使用runas命令来指定运行某个程序,这个命令是微软系统自有的,只要是Windows的计算机都可以使用,包括域环境下。这样一来即解决了软件使用问题,又不会牺牲安全性。

    下面为runas的用法及实例:

    RUNAS 用法:
    RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ] /user:<UserName> program

    RUNAS使用示例:
    runas /noprofile /user:mymachineadministrator cmd
    说明:使用本机上的Administrator管理员身份执行CMD,/noprofile为不加载该用户的配置信息。

    runas /profile /env /user:mydomainadmin “mmc %windir%system32dsa.msc”
    说明:使用本机上的admin身份扫行msc控制台。 /profile为指定加载用户配置文件。 /env 表示使用当前环境。

    runas /env /user:user@domain.microsoft.com “notepad ”my file.txt””
    说明:使用域用户身份运行,并指定使用notepad打开my file.txt文档。

    实际应用实例:
    @echo off
    runas /user:Colin-PCAdministrator /sa “C:Program FilesInternet Exploreriexplore.exe”
    说明:以管理员身份运行IE浏览器。

    向这样,我们将命令保存为批处理后,只要在用户电脑上运行这个批处理(第一次输入管理员密码),以后用户只要双击该文件就可会以管理员身份执行命令中所指定的程序了。

    ————————-

    这样就完了吗?
    NO!

    如果用户是稍稍有点电脑基础,他就会知道批处理怎样编辑,只要他将指定的程序路径改为他想要以管理员身份运行的程序就可以执行,那岂不是可以为所欲为了?

    所以,确定批处理正确无误后,我们应该进行封装操作。(即封装为.exe的文件,让用户不能进行修改。)

    封装操作很简单,下载一个“Bat To Exe Converter”的程序即可将.bat的文件转换为.exe的执行文件。

    Bat To Exe Converter下载地址如下:
    http://pan.baidu.com/s/1sjNM8Lf

    转换方法我就不介绍了,一共就几个选项,我想只要不是智障应该都知道怎样用的。
    封装为.exe的程序后如下图:

    这样,我们只要将该exe文件放在D:Program Files目录下,然后再创建一个快捷方式到桌面,这样,用户下次就可以很方便的使用了。

    当然,这一步你可以省略,直接放个.exe的文件到桌面给用户也行,但我希望大家还是养成好习惯,程序最好放在D盘Program FIles目录下。有归纳且重装系统后也好找回。

    好了,就介绍到这里。(或者说记录吧,自己记录一下而已。记录的同时分享给更多可能需要帮助的人。)

    By:Colin

    博客地址:http://www.cnblogs.com/colinliu/
    博客版权:本文以学习、记录、分享为目的。欢迎大家转载,但务必注明原文地址,谢谢合作!
  • 相关阅读:
    IT题库-134 | String、StringBuffer和StringBuilder的区别
    Java NIO 总结
    Java 性能分析工具-JProfiler
    Java 性能分析工具-MAT
    java 获取dump文件
    GC总结
    String总结
    堆-对象的分配与回收过程
    java 生产环境调优排查总结
    记一次因为Gradle与Lombok不兼容导致编译时的内存溢出 Expiring Daemon because JVM heap space is exhausted
  • 原文地址:https://www.cnblogs.com/colinliu/p/runas.html
Copyright © 2011-2022 走看看