Networking Powershell在当前服务器上创建共享-向用户/组授予权限

Networking Powershell在当前服务器上创建共享-向用户/组授予权限,networking,powershell,permissions,powershell-2.0,Networking,Powershell,Permissions,Powershell 2.0,我在创建共享或分配权限方面没有任何问题,但真正完全访问它确实很困难。我是服务器的管理员,我正在尝试为其他用户访问服务器做准备,我正在尝试将权限设置为对所有人的完全访问 问题是,当我尝试在共享中创建新文件/文件夹时,访问被拒绝 其他人在通过powershell进行共享时是否遇到此错误 以下是我一直使用的代码: function New-Share { param ( [parameter(ValueFromPipeline=$true, ValueFrom

我在创建共享或分配权限方面没有任何问题,但真正完全访问它确实很困难。我是服务器的管理员,我正在尝试为其他用户访问服务器做准备,我正在尝试将权限设置为对所有人的完全访问

问题是,当我尝试在共享中创建新文件/文件夹时,访问被拒绝

其他人在通过powershell进行共享时是否遇到此错误

以下是我一直使用的代码:

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