找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 15717|回复: 0

[原创] VBScript 克隆源对象的ACL到目标

[复制链接]
发表于 2013-8-13 23:38:33 | 显示全部楼层 |阅读模式
本帖最后由 lxzzr 于 2013-8-13 23:40 编辑

准确的应该是附加源对象的权限到目标。

  1. '==============================================================
  2. ' Copyright (c) enun-net. All rights reserved.
  3. ' ScriptName: CloneACL.vbs
  4. ' Creation Date: 8/5/2013
  5. ' Last Modified: 8/5/2013
  6. ' Author: lxzzr
  7. ' Homepage: www.enun.net
  8. ' E-mail: 0x22e09@sina.com
  9. ' Description: Clone object's ACL.
  10. '==============================================================

  11. If WScript.Arguments.Count < 2 Then
  12.         WScript.Echo "Usage: CloneACL <sObjectPath(file or Folder)> <dObjectPath(file or Folder)>"
  13.         WScript.Quit 1
  14. End If

  15. sObjectPath = WScript.Arguments( 0 )
  16. dObjectPath = WScript.Arguments( 1 )
  17. Set ObjWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate, (Security)}!\\.\root\cimv2")

  18. Set scr = ObjWMI.Get("Win32_LogicalFileSecuritySetting=""" & Replace( sObjectPath,"","\") & """" )
  19. sReturn = scr.GetSecurityDescriptor( objSD )
  20. If ( sReturn <> 0 ) Then
  21.         WScript.Echo "Could not get security descriptor: " & sReturn
  22.         wscript.Quit sReturn
  23. End If

  24. Set dst = ObjWMI.Get("Win32_LogicalFileSecuritySetting=""" & Replace( dObjectPath,"","\") & """" )
  25. dReturn = dst.SetSecurityDescriptor( objSD )
  26. If ( dReturn <> 0 ) Then
  27.         WScript.Echo "Could not set security descriptor: " & dReturn
  28.         wscript.Quit dReturn
  29. End If
复制代码
https://www.enun.net/?p=2308

评分

参与人数 1技术 +1 收起 理由
broly + 1 感谢分享

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 04:28 , Processed in 0.018438 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表