您的位置:首页技术开发ASP教程 → WSH实用讲座---第四讲 配置目录权限

WSH实用讲座---第四讲 配置目录权限

时间:2004/11/7 4:13:00来源:本站整理作者:蓝点我要评论(0)

即配置目录的ACL,至于该如何配置权限,才能让你的服务器是安全的,那得根据你自己的客观实际了,而且,这也是商业秘

密。我这里只是说明用脚本实现的方法。



  有两种方法可以完成这个任务(也许还有其他的方法),一种是采用第三方组件(我经常使用的是NTAccess.Permission,这

是个要MONEY的东东,但是我把系统时间改成1997年4月25日,这样,它就不认为我过期了,等执行完脚本,我再改回1999年4月25

日,呵呵。另外一个是SA的FILEMANAGER,功能强大,但体积也大);另一种是在WSH里调用NT的命令行cacls.exe,它的用法为

(摘自NT的帮助文件):



Cacls



显示或修改文件访问控制表(ACL)。



cacls filename [/t] [/e] [/c] [/g user:perm] [/r user [...]] [

/p user:perm [...]] [/d user [...]]



参数



filename



显示文件或指定文件的访问控制表 ACL 。



/t



在当前目录及所有子目录下改变指定文件的 ACL 。



/e



编辑 ACL,但不替换。



/c



继续更改 ACL,并忽略错误。



/g user:perm



将访问权授予指定用户。Perm 可以是:

r  读取

c  更改(写)

f  完全控制



/r user



撤消指定用户的访问权。



/p user:perm



还原指定用户的访问权。Perm 可以是:



n  无

r   读取

c  更改(写)

f  完全控制



/d user



拒绝指定用户的访问。



可以在一个命令中指定多个文件或用户。



  使用NTAccess.Permission的一个例子如下:



Rem ----------------------------

Rem 定义常量

Rem ----------------------------

const ntpNoAccess = 1

const ntpRead = 2

const ntpWrite = 4

const ntpExecute = 8

const ntpDelete = 16

const ntpPermissions= 32

const ntpOwnership = 64



const ntpFileRights = 1

const ntpDirRights = 2



ntpChange = ntpRead + ntpWrite + ntpExecute + ntpDelete

ntpFull = ntpChange + ntpPermissions + ntpOwnership



Rem -----------------------------------------------

Rem 开始设置

Rem -----------------------------------------------

WScript.Echo "开始设置."

Set ntp = CreateObject("NTAccess.Permissions")



set acl = ntp.File("d:\test", true )



' add No Access entries first

acl.Add "Users" , ntpNoAccess, ntpFileRights

acl.Add "Users" , ntpNoAccess, ntpDirRights



' now delete any ACE's we want to remove

acl.Delete "Everyone", ntpFileRights

acl.Delete "Everyone", ntpDirRights



' now add any other new ACE's

acl.Add "Administrators", ntpFull, ntpFileRights

acl.Add "Administrators", ntpFull, ntpDirRights



acl.Add "white", ntpChange, ntpFileRights

acl.Add "white", ntpChange, ntpDirRights



' finally remember to call save

acl.save

WScript.Echo "已经完成设置!"



  使用cacls的一个例子如下:



Set WshShell = Wscript.CreateObject("Wscript.Shell")

userdir = "d:\userdate"

username = "white"

argu = userdir & " /t /e /p " & username & ":f"

WshShell.Run ("c:\winnt\system32\cacls " & argu)






相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 《龙珠:超宇宙》 战斗E3 2014:瘆人僵尸《消 asp代码实现access数据导出到excel文件如何使用FSO读取Js文件内容并可以编辑修改对初学者有用的一些asp函数集学习ASP编程必会的代码

人气排行 asp代码实现access数据导出到excel文件asp不需要任何配置的伪静态实现如何使用FSO读取Js文件内容并可以编辑修改asp去除html标记和空格的代码Asp全选删除代码教大家网页伪静态知识及其2种实现方法Microsoft SQL Server 7.0安装问题(一)ASP.NET中的Code Behind技术4