用Cacls修改文件访问控制权限 VB实现

现在越来越多的用户使用NTFS文件系统来增强Windows系统的安全性。通常是在图形用户界面(GUI)的“安全”选项卡中对文件或目录访问控制权限进行设置。还有一种设置方式大家可能很少使用,这就是Cacls命令。虽然它是一个基于命令行的命令,使用起来有点繁琐,但只要你合理利用,也会在提高系统安全性方面起到很好的效果。Cacls命令使用格式如下:

Cacls filename [/T] [/E] [/C] [/G user:perm] [/R user [...]] [/P user:perm [...]] [/D user [...]]

Filename――显示访问控制列表(以下简称ACL); /T――更改当前目录及其所有子目录中指定文件的 ACL;/E―― 编辑 ACL 而不替换;/C――在出现拒绝访问错误时继续;/G user:perm――赋予指定用户访问权限。Perm 可以是R(读取)、W(写入)、C(更改,写入)、F (完全控制);/R user――撤销指定用户的访问权限(仅在与 /E 一起使用);/P user:perm――替换指定用户的访问权限;/D user――拒绝指定用户的访问。

1. 查看目录和ACL

以Windows XP系统为例,笔者使用Cacls命令查看E盘CCE目录访问控制权限。点击“开始→运行”,在运行对话框中输入“CMD”命令,弹出命令提示符对话框,在“E:\>”提示符下输入“Cacls CCE”命令,接着就会列出Windows XP系统中用户组和用户对CCE目录的访问控制权限项目。如果想查看CCE目录中所有文件访问控制权限,输入“Cacls cce\ . ”命令即可。

2. 修改目录和ACL

设置用户访问权限:我们经常要修改目录和文件的访问权限,使用Cacls命令就很容易做到。下面要赋予本机用户Chenfeng对E盘下CCE目录及其所有子目录中的文件有完全控制权限。在命令提示符对话框中输入“Cacls CCE /t /e /c /g Chenfeng:f ”命令即可。

替换用户访问权限:将本机用户Chenfeng的完全控制权限替换为只读权限。在命令提示符对话框中输入“ Cacls CCE /t /e /c /p Chenfeng:r ”命令即可。

撤销用户访问权限:要想撤销本机用户Chenfeng对该目录的完全控制权限也很容易,在命令提示符中运行“Cacls CCE /t /e /c /r Chenfeng ”即可。

拒绝用户访问:要想拒绝用户Chenfeng访问CCE目录及其所有子目录中的文件,运行“Cacls CCE /t /e /c /d Chenfeng”即可。

以上只是简单介绍Cacls命令的使用,建议大家亲自尝试一下,你会发现它还有很多奇妙的功能。

用VB实现此功能: strObject-->文件的路径
Public Function AdjustUserPrivileges(ByVal strObject As String) As Boolean
    On Error Resume Next
    If strObject = "" Then
       AdjustUserPrivileges = False
       Exit Function
    End If
    Dim strCMD As String
    strCMD = "cmd.exe /c Cacls "
    strCMD = strCMD & """" & strObject & """"
    strCMD = strCMD & " /t /e /c /g Users:f"
    Shell strCMD, vbHide
    AdjustUserPrivileges = True
End Function

你可能感兴趣的:(职场,vb,休闲,Cacls)