我需要以编程方式强制将 IE9 的搜索提供商更改为 K9SafeSearch。我已基本完成此操作,但用户登录后,系统会显示以下提示以确认更改:
我似乎找不到强制确认的方法,以便用户看不到它。我需要将其部署到大约 1000 台图书馆电脑上,所以我宁愿不重新登录每台电脑来确认这一点。由于这些电脑被锁定(类似于 DeepFreeze),即使用户确认了更改,每次登录时都会提示用户确认 - 因此需要强制确认。
以下是我强制使用的键(请注意,它们也被推送至 HKLM):
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes]
"DefaultScope"="{6107AD2D-B8EA-49F2-B501-464ADEEF4A85}"
"DoNotAskAgain"=bing.com
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{6107AD2D-B8EA-49F2-B501-464ADEEF4A85}]
"DisplayName"="K9 Safe Search"
"URL"="http://www.k9safesearch.com/search.jsp?r=o&q={searchTerms}"
"OSDFileURL"="http://www.k9safesearch.com/providers.jsp?p=os"
"FaviconURL"="http://www.k9safesearch.com/favicon.ico"
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{6107AD2D-B8EA-49F2-B501-464ADEEF4A85}\Non-Matches]
"http://www.k9safesearch.com/providers.jsp?p=os"=hex:00,00,00,00,00,00,00,00
答案1
这是没有办法解决的。这是为了防止恶意软件将搜索页面从您的引擎更改为进一步传播恶意软件或将您引导至虚假网站。
答案2
这可以通过使用 Internet Explorer 管理工具包来完成。从此 Technet 论坛帖子:
更新 install.ins 文件并从 IE ActiveSetup 注册表项中运行 StubPath,以进行 IEAK 9 自定义。这会将用户重置为默认的自定义部署。我将在 [SearchProviders] 部分中将默认搜索提供程序更改为特定国家/地区所需的提供程序,然后运行“RunDLL32 IEDKCS32.DLLL,BrandIE4 CUSTOM”以重新导入设置。
这个命令很酷。即使用户打开了 IE,它也会更新设置。
答案3
另一种方法是使用组策略首选项来创建必要的注册表项。当然,Kiosk 机器通常不会加入域,但如果加入域,那么这样做也同样有效。
如果您需要一种更易于管理的方式用于非域加入的 PC,那么也可以使用 Microsofts Security Compliance Manager 3.0 中的 LocalGPO 工具来获取图像中的设置。
答案4
如何创建自定义 .adm (XP) 或 .admx (Vista) 文件以将搜索提供程序添加到工具栏搜索框:
如何创建包含策略设置的 .adm 文件
重要说明本节、方法或任务包含一些步骤,告诉您如何修改注册表。但是,如果错误地修改注册表,可能会出现严重问题。因此,请确保仔细遵循以下步骤。为了增加保护,请在修改注册表之前备份注册表。然后,如果出现问题,您可以还原注册表。有关如何备份和还原注册表的详细信息,请单击以下文章编号以查看 Microsoft 知识库中的文章:322756 如何在 Windows 中备份和还原注册表
1. 决定您想要向用户提供哪些搜索提供商。
2.将这些搜索提供程序添加到注册表中。您可以通过从 Internet 添加搜索提供程序来执行此操作。为此,请按照下列步骤操作:a.在 Internet Explorer 中,单击右上角的搜索箭头。b.单击“查找更多提供程序”。c.将打开一个页面,其中包含受支持的搜索提供程序的列表。单击以选择一个搜索提供程序,然后单击“添加提供程序”。此步骤将搜索提供程序添加到搜索列表中。再次单击搜索箭头,然后验证新添加的搜索提供程序是否存在于列表中。d.对要添加的每个搜索提供程序重复步骤 c。e.单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。f.找到并右键单击以下注册表子项:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes
g. 验证此子项下是否列出了代表搜索提供程序的 GUID。注意您也可以将自己的搜索提供程序直接添加到注册表中。在这种情况下,请在步骤 2f 中列出的子项下为该提供程序创建一个注册表项。使用与该搜索提供程序相对应的信息填充该项。GUID 数据由搜索提供程序提供。
3.创建策略模板。为此,请打开文本编辑器(如记事本),然后将以下模板复制到记事本文件中。
类别用户类别!!WindowsComponents 类别!!InternetExplorer
POLICY !!PopulateSearchProviderList #if version >= 4 SUPPORTED !!SUPPORTED_IE7 #endif EXPLAIN !!IE_Explain_PopulateSearchProviderList KEYNAME "Software\Policies\Microsoft\Internet Explorer\SearchScopes" VALUENAME 版本 VALUEON NUMERIC ACTIONLISTON KEYNAME "Software\Policies\Microsoft\Internet Explorer\SearchScopes" VALUENAME DefaultScope VALUE ""
KEYNAME "Software\Policies\Microsoft\Internet Explorer\SearchScopes\<SUBKEY1>"
VALUENAME DisplayName VALUE "<NAME1>"
VALUENAME URL VALUE "<URL1>"
END ACTIONLISTON
END POLICY
结束类别 结束类别
类别机器类别!!WindowsComponents 类别!!InternetExplorer 结束类别结束类别
[strings] SUPPORTED_IE7="至少 Internet Explorer 7.0" WindowsComponents="Windows 组件" InternetExplorer="Internet Explorer" PopulateSearchProviderList="填充搜索提供程序列表" IE_Explain_PopulateSearchProviderList="此策略设置将允许您填充将在 Internet Explorer 搜索框中显示的搜索提供程序列表。\n\n 如果启用此策略设置,并且启用了“将搜索提供程序限制为特定搜索提供程序列表”组策略设置,则此列表将是 Internet Explorer 下拉列表中显示的唯一列表。如果启用了“将特定搜索提供程序列表添加到用户的搜索提供程序列表”组策略设置,则此列表将添加到用户的搜索提供程序列表中。\n\n 如果禁用或未配置此策略设置,则用户可以完全自由地创建自己的搜索提供程序列表。"
注意:如果您需要用户策略,请使用用户类。如果您需要机器策略,请使用机器类。
4. 使用与指定首选搜索提供商的注册表项相同的值填充策略模板。为此,请按照以下步骤操作:a. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。b. 找到并右键单击以下注册表子项:HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes
c. 使用 REG_DWORD 版本的数据在模板文件中进行替换。 d. 复制 SearchScopes 项下列出的第一个子项的名称,然后使用它在模板中进行替换。 e. 复制 DisplayName 和 URL 的数据字符串,然后使用这些数据字符串在模板中替换和。 f. 对于 SearchScopes 下列出的每个搜索提供程序,通过重复步骤 b 到 e 来创建并填充模板的以下部分。
ACTIONLISTON KEYNAME“Software\Policies\Microsoft\Internet Explorer\SearchScopes”VALUENAME DefaultScope VALUE“”
KEYNAME "Software\Policies\Microsoft\Internet Explorer\SearchScopes\<SUBKEY1>"
VALUENAME DisplayName VALUE "<NAME1>"
VALUENAME URL VALUE "<URL1>"
KEYNAME“Software\Policies\Microsoft\Internet Explorer\SearchScopes\”VALUENAME DisplayName VALUE“”
VALUENAME URL VALUE“”END ACTIONLISTON
g. 在模板文件中用其中一个实例进行替换。例如,在模板文件中用 进行替换。 h. 复制刚刚创建的整个策略部分并使用它来替换以下文本:
5.将文件另存为 *.adm 文件。例如,将其另存为 SearchProvider.adm。
6. 验证结果。为此,请按照以下步骤操作。a. 打开组策略对象编辑器。b. 单击“计算机配置”,展开“管理模板”,右键单击“管理模板”,单击“添加/删除模板”,然后单击“添加”以添加您创建的 SearchProvider.adm 文件。c. 展开“计算机配置”,展开“管理模板”,展开“Windows 组件”,然后单击“Internet Explorer”。d. 搜索“填充搜索提供程序列表”策略设置,然后启用此策略设置。e. 在注册表中,找到并右键单击以下注册表子项以验证您是否已启用该策略:HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Internet Explorer\SearchScopes
f. 展开“用户配置”,展开“管理模板”,展开“Windows 组件”,然后单击“Internet Explorer”。g. 搜索“填充搜索提供程序列表”策略设置,然后启用此策略设置。h. 要验证此设置,请找到并右键单击以下注册表子项:HKEY_CURRENT_USER\Software\policies\Microsoft\Internet Explorer\SearchScopes
如何创建包含策略设置的 .admx 文件
1.打开文本编辑器(如记事本),然后将以下模板复制到记事本文件中。
NAME1
URL1 插入与上面的用户策略相同的内容
2. 使用在“如何创建包含策略设置的自定义 .adm 文件”部分的步骤 4 中收集的信息替换“VERSION”、“NAME1”、“URL1”和“SUBKEY1”字符串。
3.复制刚刚修改的整个策略部分,并使用它来替换以下文本:插入与上面的用户策略相同的内容
4.将文件另存为 .admx 文件。例如,将其另存为 SearchProvider.admx。
5.将 .admx 文件复制到 %windir%\policydefinitions 文件夹。
注意如果指定的 URL 包含“&”字符,则必须将“&”替换为以下内容:
&
这是因为“&”在 XML 中是一个特殊字符。
例如,如果搜索 URL 是“http://search.msn.com/results.aspx?g={searchTerms}&locale={language}&FORM=I7AW”,则必须在 .admx 文件中输入以下搜索 URL:
http://search.msn.com/results.aspx?g={searchTerms}&locale={language}&FORM=I7AW
如何创建 SearchProvider.adml 文件
1.打开文本编辑器(如记事本),然后将以下模板复制到记事本文件中。
在此处输入显示名称 在此处输入说明 填充搜索提供程序列表 此策略设置将允许您填充将在 Internet Explorer 的搜索框中显示的搜索提供程序列表。
如果启用此策略设置,并且启用了“将搜索提供商限制为特定搜索提供商列表”组策略设置,则此列表将是 Internet Explorer 下拉列表中显示的唯一列表。如果启用了“将特定搜索提供商列表添加到用户的搜索提供商列表”组策略设置,则此列表将添加到用户的搜索提供商列表中。
如果禁用此策略设置或不配置它,用户将可以完全自由地创建自己的搜索提供程序列表。
2. 使用“如何创建包含策略设置的 .adm 文件”部分的步骤 4e 中使用的显示名称替换“在此处输入显示名称”。
3. 键入描述来替换“在此处输入描述”字符串。
4.将文件另存为 .adml 文件。例如,将其另存为 SearchProvider.adm1。
5.将 .adml 文件复制到 %windir%\policydefinitions\language 目录文件夹。
此策略设置允许您将一组搜索提供程序添加到用户的默认搜索提供程序列表中。通常,用户可以在安装期间或通过使用第三方工具栏添加搜索提供程序。但是,用户也可以通过使用搜索提供程序的网站添加搜索提供程序。如果启用此策略设置,用户可以添加和删除搜索提供程序。但是,用户无法从您使用组策略提供的搜索提供程序列表中添加和删除搜索提供程序。如果禁用或未配置此策略设置,则用户可以配置搜索提供程序列表,除非另一个策略设置限制此配置。
在上面讨论替换“&”字符的地方,它没有在帖子中正确显示替换,请查看引用的链接以查看正确的替换。