0

将共享权限设置为文件夹时遇到一些问题。无法理解在哪种模式下为用户域\用户设置权限

  1. NET SHARE testfolder=C:\test /GRANT:Everyone,FULL设置 NTFS 权限但不共享文件夹权限

  2. 使用 [wmiClass] "Win32-Share".create() 也可以这样做(写入 NTFS 权限)

如何设置用户与文件夹共享?

4

1 回答 1

0

我在下一个函数中使用 win32_Share.create() :

函数 shareFolder { 参数 ($folder, $uname) $name = $folder.Name $path = $folder.Fullname

$sd = ([WMIClass] "Win32_SecurityDescriptor").CreateInstance()

$ace = ([WMIClass] "Win32_ACE").CreateInstance()
$Trustee = ([WMIClass] "Win32_Trustee").CreateInstance()
$Trustee.Name = $uname
$Trustee.Domain = $null
$ace.AccessMask = 524288
$ace.AceFlags = 3 
$ace.AceType = 0 
$ACE.Trustee = $Trustee 
$sd.DACL += $ace.psObject.baseobject 

$mc = [WmiClass]"Win32_Share"
$InParams = $mc.psbase.GetMethodParameters("create")
$InParams.Access = $sd
$InParams.Description = "Share"
$InParams.MaximumAllowed = $Null
$InParams.Name = "test"
$InParams.Password = $Null
$InParams.Path = $folder 
$InParams.Type = [uint32]0

$mc.PSBase.InvokeMethod("Create", $InParams, $Null)

}

共享文件夹 "C:\test" "admin"

在这种情况下,据我了解,正在设置 ntfs 权限。如何在文件夹上设置“共享权限”(读/写)?

于 2013-07-14T12:14:22.597 回答