![](/img/trans.png)
[英]PowerShell Editing Cmdlets/ Making new ones/ Merging Cmdlets
[英]Powershell Cmdlets to provide access to new user on shared path in windows 2003
我希望自動化任務,例如通過windows server 2003
Microsoft Computer management console compmgmt.msc
在共享路徑上提供對新用戶的訪問。 我正在尋找相同的power shell cmdlets
。 有人可以將我引導到可以找到這些地方的地方。
謝謝,Sambhav
在W2K3上,您只有PSv1或2及其受支持的.Net庫。 所以你被那些卡住了。
提供訪問權限只是手動或通過代碼設置權限。 您不使用PS來控制Compmgmt.msc。 PS,目標確實不包括GUI管理。
您可以通過自動化授予共享權限,而無需觸摸GUI。
PSv2(假設您已將其裝箱),您只有cmdlet https://social.technet.microsoft.com/wiki/contents/articles/13876.powershell-2-0-cmdlets.aspx
因此,從該列表中可以看出...
Get-Acl
Set-Acl
……您所追求的cmdlet。
否則,下面可以顯示其他方法。
如何使用Powershell v2.0設置SHARE權限?
#Creating Security Descriptor
$sd = ([WMIClass] "Win32_SecurityDescriptor").CreateInstance()
#Creating ACE for Authenticated Users and setting it to Security Descriptor
[System.Security.Principal.NTAccount]$account="NT Authority\Authenticated Users"
[INT]$rights='1179817'
$ace = Create-WMIAce $account $rights
$sd.DACL += @($ace.psobject.baseobject) # append
$sd.ControlFlags="0x4" # set SE_DACL_PRESENT flag
#Creating ACE for Administrators and setting it to Security Descriptor
[System.Security.Principal.NTAccount]$account="BUILTIN\Administrators"
[System.Security.AccessControl.FileSystemRights]$rights='FullControl'
$ace = Create-WMIAce $account $rights
$sd.DACL += @($ace.psobject.baseobject) # append
$sd.ControlFlags="0x4" # set SE_DACL_PRESENT flag
#Setting Share Permissions
$Share = gwmi win32_share -filter "name='ShareName'"
$Share.SetShareInfo($Share.MaximumAllowed,$Share.Description,$SD)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.