将 UAC 配置为提示输入凭据时,无法从提升的提示处获取映射的驱动器
本文提供了一些方法,用于解决映射驱动器在提升的命令提示符中不可用的问题。
适用于:Windows 7 Service Pack 1,Windows Server 2012 R2
原始 KB 编号: 3035277
症状
如果满足以下条件,则会出现此问题:
- 使用 组策略 首选项 (GPP) 或登录脚本在登录期间映射网络驱动器。
- 已启用用户帐户控制 (UAC) 。
- 以下 UAC 组策略设置配置为提示输入凭据:
用户帐户控制:管理员审批模式下管理员的提升提示行为 - 已
EnableLinkedConnections
配置注册表项。 请参阅配置 EnableLinkedConnections 注册表项的详细信息。
在这些情况下,你将遇到以下情况:
- 登录到客户端时,映射的驱动器将按预期提供。
- 以管理员身份运行提升的命令提示符时,映射的驱动器在提升的命令提示符下不可用。
注意
此问题还会影响在提升的上下文中运行的其他应用程序, (以管理员) 身份运行,并使用驱动器号访问映射的驱动器。
原因
启用 UAC 后,系统会在用户登录时创建两个登录会话。 这两个登录会话相互链接。 一个会话表示提升的会话期间的用户,另一个会话表示在最低用户权限下运行。
创建驱动器映射时,系统会 (DosDevices) 创建符号链接对象,将驱动器号关联到 UNC 路径。 这些对象特定于登录会话,不会在登录会话之间共享。
注意
启用 UAC 时,注册表项 EnableLinkedConnections
强制将符号链接写入创建的两个链接登录会话。
当 UAC 策略配置为 提示输入凭据时,除了现有的两个链接登录会话之外,还会创建新的登录会话。 以前创建的表示驱动器映射的符号链接在新登录会话中不可用。
解决方法 - 方法 1
- 在“本地组策略 编辑器”中,找到以下组策略路径:
本地计算机策略\Windows 设置\安全设置\本地策略\安全选项 - 将以下策略配置为提示同意:用户帐户控制:在管理员审批模式下管理员的提升提示行为
解决方法 - 方法 2
在提升的会话中再次映射所需的驱动器,例如,使用 .bat 脚本文件。
配置 EnableLinkedConnections 注册表项的详细信息
- 在“注册表编辑器”中,找到并单击以下注册表子项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
- 右键单击“ 配置”,选择“ 新建”,然后选择“ DWORD (32 位) 值”。
- 将新注册表项命名为 EnableLinkedConnections。
- 双击 EnableLinkedConnections 注册表项。
- 在“编辑 DWORD 值”对话框中,在“值数据”字段中键入 1,然后选择“确定”。
- 退出注册表编辑器,然后重启计算机。