0

我一直在使用这个脚本来创建我的用户文件夹,但我发现远程共享文件夹是使用只读共享创建的。

我的问题是如何创建与$domainname\domain用户的共享文件夹full control

Invoke-WmiMethod -Class win32_share -name Create -ArgumentList `
 @($null,"",100,"hideshare$","",e:\users\hideshare,0) -computername "DestinationSRV"

我找到了许多带有答案的线程,但不是我使用的方法。

有任何想法吗?

4

1 回答 1

3

尝试:

#Username/Group to give permissions to
$trustee = ([wmiclass]'Win32_trustee').psbase.CreateInstance()
$trustee.Domain = "domainname"
$trustee.Name = "username or groupname"

#Accessmask values
$fullcontrol = 2032127
$change = 1245631
$read = 1179785

#Create access-list
$ace = ([wmiclass]'Win32_ACE').psbase.CreateInstance()
$ace.AccessMask = $fullcontrol
$ace.AceFlags = 3
$ace.AceType = 0
$ace.Trustee = $trustee

#Securitydescriptor containting access
$sd = ([wmiclass]'Win32_SecurityDescriptor').psbase.CreateInstance()
$sd.ControlFlags = 4
$sd.DACL = $ace
$sd.group = $trustee
$sd.owner = $trustee

$share = Get-WmiObject Win32_Share -List -ComputerName "DestinationSRV"
$share.create("e:\users\hideshare", "hideshare$", 0, 100, "Description", "", $sd)

此共享的安全性将只允许指定的用户名。您需要修改它(添加多个 ace)以添加不同的组、添加每个人等。

访问部分的来源

于 2013-01-15T20:55:15.473 回答