使用命令行取得VISTA权限

【VISTA讲座之一】使用命令行取得VISTA权限   Post By:2007-8-29 10:45:00

我们往往被VISTA的严格权限设置搞得非常痛苦。

下面两个命令可以给你对一个文件/文件夹(本身)完全的权限

开始-搜索/运行栏输入CMD,回车进入命令行模式:

输入兩個command:
1. takeown /f "文件路径"
2. cacls "文件路径" /G "username":F
"username" 是你想要取得权限的账户名,如果想让所有用户取得权限,在这里需要定义为EveryOne
3 . 例如:要获取 c:/windows/system32/drivers/tcpip.sys 这个控制连接数文件tcpip.sys的权限(通常都会因为权限而无法修改)
4 .开始-搜索/运行栏输入CMD,回车以管理员身份进入命令行模式.
5 .输入以下内容: takeown /f c:/windows/system32/drivers/tcpip.sys ,然后回车
6.输入以下内容: cacls c:/windows/system32 /E Auki:F
(Auki是我的用户名,注意大小写和空格的位置)

cacls c:/windows/system32/drivers/tcpip.sys /G EveryOne:F ,然后回车
完成后就可以退出了。
同样,你也可以只对某个文件夹或盘符获取权限,但需要注意的是权限仅限于文件夹本身(根目录)

在命令提示符下,在标题栏点右键-属性,设置为快速编辑模式,这样方便鼠标定位和插入:鼠标点击要插入的地方,或者高亮要复制的部分,然后回车,即完成复制/粘帖操作。(Ctrl+x/c/v 在这里不好用)

注意:严禁使用cacls "文件路径" /G "username":F命令对单一用户帐户赋予系统文件夹(System32)之类的权限,会导致系统权限被剥夺,系统崩溃。
可以使用一次性命令cacls "文件路径" /E "username":F代替
高级命令cacls "文件路径" /G "username":F仅在适用于EveryOne情况下是安全的!

 

下面是一些例子:

如果让每个用户即Everyone组得到e分区的所有权限,只要在cmd下执行下面命令就可以 (启动cmd时请使用Ctrl+Shift+Enter提升权限)

   cacls.exe e: /e /t /g everyone:F      命令说明 e: 为磁盘分区e    /t  表示包含子目录 /g 表示赋予的用户组 f: 表示full control 完全控制

   cacls.exe f: /e /t /g guests:R         表示guests组用户对磁盘分区f有读取权限

  管理员取得所有权 文件分析

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT/*/shell/runas]
@="管理员取得所有权"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT/*/shell/runas/command]
@="cmd.exe /c takeown /f /"%1/" && icacls /"%1/" /grant administrators:F"
"IsolatedCommand"="cmd.exe /c takeown /f /"%1/" && icacls /"%1/" /grant administrators:F"

[HKEY_CLASSES_ROOT/exefile/shell/runas2]
@="管理员取得所有权"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT/exefile/shell/runas2/command]
@="cmd.exe /c takeown /f /"%1/" && icacls /"%1/" /grant administrators:F"
"IsolatedCommand"="cmd.exe /c takeown /f /"%1/" && icacls /"%1/" /grant administrators:F"


[HKEY_CLASSES_ROOT/Directory/shell/runas]
@="管理员取得所有权"
"NoWorkingDirectory"=""

[HKEY_CLASSES_ROOT/Directory/shell/runas/command]
@="cmd.exe /c takeown /f /"%1/" /r /d y && icacls /"%1/" /grant administrators:F /t"
"IsolatedCommand"="cmd.exe /c takeown /f /"%1/" /r /d y && icacls /"%1/" /grant administrators:F /t"

cacls命令注释:

 注意: 有些人反对使用 Cacls,请使用 Icacls。
ICACLS允许你从恢复控制台(Recovery Console)重新设置ACL。


 显示或者修改文件的访问控制列表(ACL)

 CACLS filename [/T] [/M] [/L] [/S[:SDDL]] [/E] [/C] [/G user:perm]
                [/R user [...]] [/P user:perm [...]] [/D user [...]]
    filename      显示 ACL。
   /T             更改当前目录及其所有子目录中
                  指定文件的 ACL。
    /L            对照目标处理符号链接本身
    /M            更改装载到目录的卷的 ACL
    /S            显示 DACL 的 SDDL 字符串。
    /S:SDDL       使用在 SDDL 字符串中指定的 ACL 替换 ACL。
                  (/E、/G、/R、/P 或 /D 无效)。
    /E            编辑 ACL 而不替换。
   /C             在出现拒绝访问错误时继续。
   /G user:perm   赋予指定用户访问权限。
                  Perm 可以是: R  读取
                              W  写入
                              C  更改(写入)
                              F  完全控制
   /R user        撤销指定用户的访问权限(仅在与 /E 一起使用时合法)。
   /P user:perm   替换指定用户的访问权限。
                  Perm 可以是: N  无
                              R  读取
                              W  写入
                              C  更改(写入)
                              F  完全控制
   /D user        拒绝指定用户的访问。
 在命令中可以使用通配符指定多个文件。
 也可以在命令中指定多个用户。

缩写:
   CI - 容器继承。
        ACE 会由目录继承。
   OI - 对象继承。
        ACE 会由文件继承。
   IO - 只继承。
        ACE 不适用于当前文件/目录。
   ID - 已继承。
        ACE 从父目录的 ACL 继承。

CACLS <DIR>*.* /T /E /C /G WWW:R
    <DIR>*.* Web根目录。如:C:/Inetpub/WWWRoot。
    /T 作用于所有的目录和子目录
    /E 编辑ACL,不是替换
    /C 有错误停止执行.
    /G WWW:R 赋予WWW组Read权限


Vista中绕开UAC开启超级管理员的方法

Windows Vista中的UAC在提高系统安全性的同时,也在相当程度上增加了操作中的繁琐,有时候甚至到了让人无法容忍的程度。

  如果在系统安全与操作便利之间您更倾向于简便易用的话,可以考虑开启Administrator帐号,即在登录时直接使用超级管理员,绕开UAC只给予标准用户权限的控制。

  开启超级管理员的方法如下

  1、使用安装时创建的帐号登陆Vista;

  2、开始菜单,找到”All Programs > Accessories”;

  3、右击”Command Prompt” ,选择 “Run as Administrator”;

  4、在UAC提示对话框中单击”Allow”;

  5、进入命令行窗口,输入”regedit”,回车;

  6、进入HKLMSoftware /Microsoft /Windows /NTCurrentVersion /Winlogon;

  7、添加新的键值(key),名称为SpecialAccounts;

  8、在SpecialAccounts中建立子键,名称为UserList;

  9、完成后看看位置对不对:HKLMSoftware /Microsoft /Windows /NTCurrentVersion /Winlogon /SpecialAccounts /UserList;

  10、在UserList键中,创建DWORD (32 bit) ,名称为Administrator,键值为1;

  11、在命令行中输入”net user Administrator /Active:yes”;

  12、注销或重启,就可以使用Administrator帐号了。

  13、对于加入域中的用户,只要开启了administrator 帐号,就可以使用切换用户登录。

  注意:这样做会极大地降低系统的安全性,很多恶意软件或病毒可以借此取得高权限,一般不建议这么做。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值