如何使用不同的凭据重新连接到 UNC 共享

如何使用不同的凭据重新连接到 UNC 共享

我使用 Windows 资源管理器连接到我的 NAS,方法是在 Windows 资源管理器中输入 \\DS412。它提示我输入用户名和密码。我输入了它们,然后 DS412 出现在资源管理器中的网络下。工作正常。

该股票上市净使用量我使用这个命令来断开连接:

网络使用 \\DS412\IPC$ /删除

并且效果很好。一次

然后我使用用户名和密码重新连接,这次我选中了记住这些凭据的复选框。工作正常。

现在我又想以其他用户身份连接。因此我想断开与 \\DS412 的连接,然后使用不同的凭据重新连接。

我尝试使用 NET USE,但它不再列出 \\DS412。输入网络使用 \\DS412\IPC$ /删除再次导致找不到网络连接

重启电脑没有用。\\DS412 不会自动显示在 Explorer 中的“网络”下,但如果我在 Explorer 栏中输入 \\DS412,它会立即使用我的旧凭据重新连接,而无需提示。

请注意,我没有将此 UNC 路径映射到任何驱动器号。我发现这个建议,但正如你所见,这并没有帮助。我发现建议使用注册表编辑器,但我找不到建议的确切密钥,而且我真的不想破解注册表。这应该可以使用命令行命令来实现?

我正在运行 Windows 7。

答案1

您可以使用控制面板中的凭据管理器清除缓存的凭据。

尝试浏览控制面板,在右上角的搜索栏中输入“凭据管理器”,然后单击“凭据管理器”结果。您可能会在“Windows 凭据”部分下找到缓存的凭据,如果是,您可以单击“从保管库中删除”以清除它们。

答案2

更令人困惑的是,在 Windows 7(实际上是 Vista 及更高版本)中,与提升的(以管理员身份运行)命令提示符相比,常规命令提示符维护一组单独的映射驱动器和凭据。因此,如果您使用提升的命令提示符映射驱动器,它将不会在常规(非提升)命令提示符中可见。

更多信息请点击这里:http://technet.microsoft.com/en-us/library/ee844140(v=ws.10).aspx

答案3

一旦连接,无论是作为网络驱动器、键入的 UNC 路径还是通过浏览器导航,只要您保持登录状态,Windows 就会记住该连接的凭据。如果服务器接受匿名登录进行访问,但接受非匿名凭据进行其他操作,这尤其令人讨厌。

为了在无需注销或重新启动的情况下放弃连接,我编写了一个 VBS 脚本。将以下代码粘贴到记事本中并将其保存为 .VBS 文件。双击文件运行此代码。旧凭据将被释放,让您有机会使用其他凭据进行连接。

Set WshNetwork = WScript.CreateObject("WScript.Network")
Set oDrives = WshNetwork.EnumNetworkDrives
Set oPrinters = WshNetwork.EnumPrinterConnections
If (oDrives.Count = 0) And (oPrinters.Count = 0) Then MsgBox "There are no mapped drives or printers", vbOkOnly, "Network mappings"
For i = oDrives.Count - 2 To 0 Step -2
  If oDrives.Item(i) = "" Then
    msg = "Network Drive" & vbCr & "(No drive letter)" & vbCr & oDrives.Item(i+1)
  Else
    msg = "Network Drive" & vbCr & oDrives.Item(i) & vbCr & oDrives.Item(i+1)
  End If
  Answer = MsgBox(msg & vbCr & vbCr & "Disconnect?", vbYesNoCancel + vbQuestion, "Network drive mappings")
  If Answer = vbCancel Then WScript.Quit
  If Answer = vbYes Then WshNetwork.RemoveNetworkDrive oDrives.Item(i+1)
Next
For i = oPrinters.Count - 2 To 0 Step -2
  msg = "Printer Connection" & vbCr & oPrinters.Item(i) & vbCr & oPrinters.Item(i+1)
  Answer = MsgBox(msg & vbCr & vbCr & "Disconnect?", vbYesNoCancel + vbQuestion, "Network printer mappings")
  If Answer = vbCancel Then WScript.Quit
  If Answer = vbYes Then WshNetwork.RemovePrinterConnection oPrinters.Item(i+1)
Next

希望这对你有帮助!

艾爾默。

答案4

做完之后

net use * /delete

(或某些特定的net use \\server\IPC$

你还需要清除 Kerberos 票证缓存:

klist purge

相关内容