2013-07-12 221 views
0

在設置共享權限至文件夾時遇到問題。 廣東話理解,其中模式權限設置爲用戶域\用戶PowerShell共享文件夾上的共享權限級別

  1. NET SHARE testfolder=C:\test /GRANT:Everyone,FULL組NTFS權限,但不共享許可文件夾

  2. 使用[wmiClass]「Win32的共享」 .create() (寫入NTFS權限)

如何設置用戶與文件夾共享? 謝謝

+0

你的問題很不清楚。 「在哪種模式下」是什麼意思?如果你說要授予** Domain \ User **的權限,你爲什麼要向** Everyone **授予** NET SHARE **的權限? 「使用[wmiClass]」Win32-Share「.create()」也很模糊。你想用哪種方式使用WMI方法? (顯示你正在使用的命令,並指定你在哪裏/如何調用它) –

+0

我在下一個函數中使用win32_Share.create(): – user2576511

回答

0

我在接下來的功能使用win32_Share.create():

功能shareFolder { 參數($文件夾,$ UNAME) $ NAME = $ folder.Name $ PATH = $文件夾.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:\測試」, 「管理員」

在這種情況下,據我所知,ntfs權限正在設置。 如何在文件夾上設置「共享權限」(讀/寫)?