更改Powershell中的访问掩码(文件共享权限)

时间:2017-11-06 13:37:21

标签: powershell permissions share

我尝试使用PowerShell在远程服务器上创建共享文件夹,其中每个人需要具有完全控制权限。在安全性中更改它非常容易,但对于共享权限,Web上没有太多信息。 虽然我可以获得有关访问掩码的信息:

$folder='Profile'
$setting = get-wmiobject -Class Win32_LogicalShareSecuritySetting -ComputerName nano-03 -filter "Name='$folder'"


$setting.GetSecurityDescriptor().Descriptor.Dacl | Select @{Name="Domain";Expression={$_.Trustee.Domain}},@{Name="Name";Expression={$_.Trustee.Name}},AccessMask


#here is more specify
$setting.GetSecurityDescriptor().Descriptor.Dacl | Where {$_.trustee.name -eq 'Everyone'} 

且值 1179817 ,但我需要 2032127 才能完全控制

有一个方法SetSecurityDescriptor(),但我不知道如何正确使用它。有没有人有想法?

谢谢!

1 个答案:

答案 0 :(得分:0)

当您使用最新版本的PowerShell时,可以使用New-SmbShare创建共享并设置权限:

New-SmbShare –Name MySharedFolder –Path C:\folder\MySharedFolder -FullAccess Everyone

这不能直接针对远程计算机运行,因此您需要使用Invoke-Command远程运行​​它:

Invoke-Command -ComputerName server1 -ScriptBlock { New-SmbShare –Name MySharedFolder –Path C:\folder\MySharedFolder -FullAccess Everyone }