powershell共享文件夹的权限级别

时间:2013-07-12 13:24:09

标签: powershell-v2.0

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

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

  2. 的权限
  3. 使用[wmiClass]“Win32-Share”.create()也会这样做(写NTFS权限)

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

1 个答案:

答案 0 :(得分:0)

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

function shareFolder {     Param($ 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)

}

shareFolder“C:\ test”“admin”

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