Networking Powershell在当前服务器上创建共享-向用户/组授予权限
我在创建共享或分配权限方面没有任何问题,但真正完全访问它确实很困难。我是服务器的管理员,我正在尝试为其他用户访问服务器做准备,我正在尝试将权限设置为对所有人的完全访问 问题是,当我尝试在共享中创建新文件/文件夹时,访问被拒绝 其他人在通过powershell进行共享时是否遇到此错误 以下是我一直使用的代码:Networking Powershell在当前服务器上创建共享-向用户/组授予权限,networking,powershell,permissions,powershell-2.0,Networking,Powershell,Permissions,Powershell 2.0,我在创建共享或分配权限方面没有任何问题,但真正完全访问它确实很困难。我是服务器的管理员,我正在尝试为其他用户访问服务器做准备,我正在尝试将权限设置为对所有人的完全访问 问题是,当我尝试在共享中创建新文件/文件夹时,访问被拒绝 其他人在通过powershell进行共享时是否遇到此错误 以下是我一直使用的代码: function New-Share { param ( [parameter(ValueFromPipeline=$true, ValueFrom
function New-Share
{
param (
[parameter(ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true, Mandatory=$true, HelpMessage="No folder name specified")]
[string]$FolderName,
[parameter(ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true, Mandatory=$true, HelpMessage="No share name specified")]
[string]$ShareName,
[parameter(ValueFromPipeline=$true, ValueFromPipelineByPropertyName=$true, Mandatory=$false, HelpMessage="No description specified")]
[string]$Description
)
$error.clear()
# Check for folder; Create it if it doesn't exist
If (!(Test-Path $FolderName))
{
New-Item $FolderName -type Directory | Out-Null
}
# Check for share; Create it if it doesn't exist
$Shares=[WMICLASS]"WIN32_Share"
if (!(Get-WMIObject Win32_share -filter "name='$ShareName'"))
{
$Shares.Create($FolderName,$ShareName,0,65535,$Description) | Out-Null
if (!($error))
{
# Share created
return $true
} else {
# Error
return $false
}
} else {
# Share Exists
return $false
}
}
我一直在使用以下命令调用函数:
function bo.Share()
{
$domain = [Environment]::UserDomainName
$BDrive = "$boDrive" + ":\SYNintviewer"
New-Share -FolderName "$BDrive" -ShareName "SYNintviewer" -Description "SYNintviewer"
}
事实上,这是我自己做的 改为调用此函数:
function bo.Share()
{
$domain = [Environment]::UserDomainName
$BDrive = "$boDrive" + ":\SYNintviewer"
echo "$boDrive is BoDRIVE"
echo "$BDrive is BDRIVE"
New-Share -Sharename "SYNintviewer" -Sharepath "$BDrive" -group "Authenticated Users" -auth FULL
}
所以这一切都有效,你只是事后没有权限?您是否在脚本中使用Set ACL尝试解决此问题,或者甚至使用cacls.exe?如果您在
$Shares.Create($FolderName,$ShareName,065535,$Description)行中注释掉| out Null
,返回值是多少?
感谢您的注释,我不必设置ACL,只需正确格式化即可,我想。到目前为止,它正在使用新行:new Share-Sharename“synitviewer”-Sharepath“$BDrive”-group“Authenticated Users”-auth FULL