与powershell系统用户映射的驱动器无法被其他人访问

时间:2018-05-03 14:59:58

标签: java amazon-web-services powershell

我尝试使用"系统"将驱动器映射到另一台服务器。 powershell中的帐户。我很成功,但只有以系统身份登录才能访问服务器,但不能以管理员或普通用户身份登录。

如果我使用管理员powershell或dos命令shell映射它,那么每个人都可以使用它。不幸的是,我无法做到这一点,因为我使用Amazon Web Service(AWS)SendCommand功能来进行映射,它只使用系统级别的PowerShell。即使我将映射命令放在批处理文件中并使其运行,映射的驱动器仍然只能供系统powershell用户使用。

以下是通过AWS SendCommand发送的两个命令的示例:

cd "C:/Program Files/Enventive/EnCOM Listener 1.0/lib/"
start-process "cmd.exe" "/c MapNetworkDrive 172.31.26.59"

批处理文件执行net use命令,如下所示:

net use D: \\%1\Company /USER:Administrator /PERSISTENT:YES "<password>"

是否有办法让所有用户都可以使用系统级PowerShell映射的驱动器?

我还在系统级别的PowerShell中尝试了以下方法,但结果相同:

$user = "Administrator"
$pass = ConvertTo-SecureString -String '<password>' -AsPlainText -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user,$pass
New-PSDrive -Name D -PSProvider FileSystem -Root \\172.31.26.59\Company -Credential $cred -Persist

执行此操作后,D:驱动器可从系统级别PowerShell中获得,但不能从DOS命令shell或管理员级别PowerShell中获取

1 个答案:

答案 0 :(得分:0)

有没有办法让系统级别PowerShell映射的驱动器可供所有用户使用?否。

New-PSDrive

  

映射的网络驱动器特定于用户帐户。您在使用启动的会话中创建的映射网络驱动器   以管理员身份运行选项或使用凭据   在已启动的会话中,另一个用户 不可见   没有明确的凭据,或使用的凭据   当前用户。

顺便说一下,you can run into drive letter collisions将映射的驱动器号分配给D ...

  

A和B通常保留给上个世纪的软盘驱动器,   和C和D通常保留给硬盘和光驱,   所以读卡器将使用E,F,G和H.