我们正在尝试使用 MDT2010 和 MDT2012 部署一批新的 Windows 7(和一些旧的 XP)机器。
由于 IE 设置为“自动检测代理设置”,因此它会从 DHCP 服务器中定义的 proxy.pac/wpad.dat 获取设置。
问题在于,在部署期间,机器不在域中,因此无法对 WebMarshal 服务器进行身份验证,所以所有基于互联网的操作都会失败,除非有人“亲自动手”填写身份验证对话框。
我该如何做以下操作之一?
- 在应用程序安装开始之前禁用 XP 的自动代理配置
- 让 proxy.pac/wpad.dat 文件根据机器上可识别的内容绕过代理(主机名可以,但我记得 PAC 无法使用该主机名,但我可以从 MDT 设置的任何其他变量也可以)
- 配置 WebMarshal 以绕过特定计算机名称的身份验证
答案1
这是我使用的(我找到的 vbs):
DIM sKey,sValue,binaryVal
Dim oReg
Dim status
Set oReg=GetObject( "winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv") 'For registry operations througout
Const HKCU=&H80000001
status = "off"
sKey = "Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections"
sValue = "DefaultConnectionSettings"
oReg.GetBinaryValue HKCU, sKey, sValue, binaryVal
select case lcase(status)
case "on" binaryVal(8) = binaryVal(8) OR 8 'Force Autodetect on
case "off" binaryVal(8) = binaryVal(8) XOR 8 'Force Autodetect off
case "show" wscript.echo "Automatically detect is set to " & ((binaryVal(8) and 8) = 8)
case else wscript.echo "Invalid parameter - IEautomaticallydetect on, off or show"
end select
if lcase(status)="on" or lcase(status)="off" then oReg.SetBinaryValue HKCU, sKey, sValue, binaryVal
对我来说运行完美,我从 .cmd 调用它
答案2
假设您有无需代理的出站互联网访问,那么您可以禁用“自动检测设置”并复制以下注册表项:
默认连接设置
在
HKCU\软件\微软\Windows\当前版本\Internet 设置\连接\
然后根据生产需要进行配置并进行另一次导出。然后您可以在适当的时候使用脚本进行切换。
请记住,大多数与代理相关的配置都存储在各种键中
HKCU\软件\微软\Windows\当前版本\Internet 设置\
这包括实际代理本身,以及例外情况等
答案3
另一个选择是,假设 webmarshal 支持它,则不对部署所需的域进行身份验证,这些域应该足够少,不会造成安全问题。