Internet Explorer 安全区域注册表项说明

引用网址:http://support.microsoft.com/kb/182569/zh-cn
Internet Explorer 安全区域设置存储在以下注册表子项下面:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings

这些注册表项包含以下项:

  • TemplatePolicies
  • ZoneMap
  • Zones

注意:默认情况下,安全区域设置存储在 HKEY_CURRENT_USER 注册表项子树中。因为该子树是为每个用户动态加载的,所以一个用户的设置不会影响另一个用户的设置。

如果在组策略中启用了“安全区域:仅使用计算机设置”;或者 Security_HKLM_only DWORD 值存在,并在以下注册表子项中的值为 1,则只使用本地计算机设置,并且所有用户都具有相同的安全设置:

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings

在启用 Security_HKLM_only 策略的情况下,Internet Explorer 将使用 HKLM 值,而 HKCU 值仍会显示在 Internet Explorer 中“安全”选项卡上的区域设置中。在 Internet Explorer 7 中,“Internet 选项”对话框的“安全”选项卡显示以下消息,表示这些设置由系统管理员管理:

有些设置由系统管理员管理

如果在组策略中启用了“安全区域:仅使用计算机设置”;或者 Security_HKLM_only DWORD 值不存在或被设置为 0,则同时使用计算机设置和用户设置。不过,“Internet 选项”中只显示用户设置。例如,当此 DWORD 值不存在或设置为 0 时,将同时读取 HKEY_LOCAL_MACHINE 设置和 HKEY_CURRENT_USER 设置,但“Internet 选项”中仅显示 HKEY_CURRENT_USER 设置。

TemplatePolicies

TemplatePolicies 项确定默认安全区域级别的设置。这些级别包括中低。可以更改默认设置中的安全级别设置。但是,不能添加更多安全级别。项中包含的值决定了安全区域的设置。每项均包含一个描述字符串值和一个显示名称字符串值,它们决定了每个安全级别的安全选项卡上显示的文本。

ZoneMap

ZoneMap 项包含以下项:

  • Domains
  • EscDomains
  • ProtocolDefaults
  • Ranges

Domains 项包含为更改其默认行为而添加的域和协议。在添加域的同时,还会为 Domains 项添加一个项。子域作为项出现在它们所属的域下面。列出域的每个项都包含一个 DWORD 值,其中含有受影响协议的值名称。DWORD 值与域添加到的安全区域的数值相同。

EscDomains 项与 Domains 项类似,只是 EscDomains 项适用于那些受增强的安全配置 (ESC) 影响的协议。ESC 是在 Microsoft Windows Server 2003 中引入的。

ProtocolDefaults 项指定用于特定协议(ftp、http、https)的默认安全区域。若要更改默认设置,可单击“安全”选项卡上的“添加站点”将协议添加到安全区域中,或者在 Domains 项下面添加一个 DWORD 值。DWORD 值的名称必须与协议名称匹配,而且不能包含任何冒号 (:) 或斜杠 (/)。

ProtocolDefaults 项还包含指定使用协议的默认安全区域的 DWORD 值。无法使用“安全”选项卡上的控件来更改这些值。如果特定 Web 站点没有在安全区域中,请使用该设置。

Ranges 项包含 TCP/IP 地址的范围。指定的每个 TCP/IP 范围出现在一个任意命名的项中。该项包含一个:Range 字符串值,其中包含指定的 TCP/IP 范围。对于每个协议,都会添加一个 DWORD 值,它包含指定 IP 范围的安全区域的数值。

当 Urlmon.dll 文件使用 MapUrlToZone 公共函数将特定 URL 解析为安全区域时,它使用以下方法之一:

  • 如果 URL 包含完全限定的域名 (FQDN),则处理 Domains 项。

    在此方法中,精确的站点匹配取代随机匹配。

  • 如果 URL 包含 IP 地址,则处理 Ranges 项。将 URL 的 IP 地址与 :Range 值进行比较,该值包含在 Ranges 项下面的任意命名的项中。

    注意:由于任意命名的项按添加到注册表中的顺序进行处理,因此,此方法在找到精确匹配前可能会找到随机匹配。如果此方法首先找到了一个随机匹配,则可能在另一个安全区域中执行 URL,而不是在其通常被分配到的那个安全区域中执行。 这种现象是设计使然。

Zones

注意:为了提高安全性,从 Windows XP SP2 开始,“本地计算机区域”默认是锁定的。 有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

922704  (http://support.microsoft.com/kb/922704/ ) 有关 Microsoft Windows XP Service Pack 2 和 Microsoft Windows Server 2003 Service Pack 1 中“Internet Explorer 安全区域”的一些新组策略设置的信息

有关更多信息,请访问下面的 Microsoft 网站:

http://technet.microsoft.com/zh-cn/library/cc782928(WS.10).aspx (http://technet.microsoft.com/zh-cn/library/cc782928(WS.10).aspx)

Zones 项包含表示为计算机定义的每个安全区域的项。默认情况下,定义以下 5 个区域(编号从 0 到 4):

值 设置 
------------------------------ 
0 我的电脑 
1 本地 Intranet 区域 
2 受信任的站点区域 
3 Internet 区域 
4 受限制的站点区域

注意:默认情况下,“我的电脑”不会出现在“安全”选项卡的“区域”框中。

其中的每项都包含以下 DWORD 值,用于表示自定义“安全”选项卡上的相应设置。

注意:除非另外声明,否则每个 DWORD 值等于 0、1 或 3。通常,设置为 0 则将具体操作设置为允许;设置为 1 则导致出现提示;设置为 3 则禁止执行具体操作。

值 设置 
---------------------------------------------------------------------------------- 
1001 ActiveX 控件和插件:下载已签署的 ActiveX 控件 
1004 ActiveX 控件和插件:下载未签署的 ActiveX 控件 
1200 ActiveX 控件和插件:运行 ActiveX 控件和插件 
1201 ActiveX 控件和插件:对没有标记为可安全执行脚本的 ActiveX 控件进行初始化和脚本运行 
1206 其他:允许 Internet Explorer Web 浏览器控件的脚本编写 ^ 
1207 保留 # 
1208 ActiveX 控件和插件:允许以前未使用的 ActiveX 控件在没有提示的情况下运行 ^ 
1209 ActiveX 控件和插件:允许脚本小程序 
120A ActiveX 控件和插件:ActiveX 控件和插件:覆盖每站点(基于域)ActiveX 限制 
120B ActiveX 控件和插件:覆盖每站点(基于域)ActiveX 限制 
1400 脚本编写:活动脚本编写 
1402 脚本编写:Java 小程序脚本编写 
1405 ActiveX 控件和插件:对标记为可安全执行脚本的 ActiveX 控件执行脚本 
1406 其他:跨域访问数据源 1407 脚本:允许编程剪贴板访问 
1408 保留 # 
1601 其他:提交未加密的表单数据 
1604 下载:字体下载 
1605 运行 Java # 
1606 其他:用户数据持久性 ^ 
1607 其他:跨域浏览子框架 
1608 其他:允许 META REFRESH * ^ 
1609 其他:显示混合内容 * 
160A 其他:在将文件上载到服务器时包括本地目录路径 ^ 
1800 其他:桌面项目的安装 
1802 其他:拖放或复制和粘贴文件 
1803 下载:文件下载 ^ 
1804 其他:在 IFRAME 中启动程序和文件 
1805 在 Web 视图中启动程序和文件 # 
1806 其他:启动应用程序和不安全文件 
1807 保留 ** # 
1808 保留 ** # 
1809 其他:使用弹出窗口阻止程序 ** ^ 
180A 保留 # 
180B 保留 # 
180C 保留 # 
180D 保留 # 
1A00 用户身份验证:登录 
1A02 允许计算机上存储的持久 cookie # 
1A03 允许每会话 cookie(未存储) # 
1A04 其他:没有证书或只有一个证书时不提示进行客户证书选择 * ^ 
1A05 允许第三方持久 cookie * 
1A06 允许第三方会话 cookie * 
1A10 隐私设置 * 
1C00 Java 权限 # 
1E05 其他:软件频道权限 
1F00 保留 ** # 
2000 ActiveX 控件和插件:二进制和脚本行为 
2001 依赖 NET Framework 的组件:运行未用 Authenticode 签名的组件 
2004 依赖 NET Framework 的组件:运行未用 Authenticode 签名的组件 
2100 其他:基于内容打开文件,而不是基于文件扩展名 ** ^ 
2101 其他:在低特权 Web 内容区域中的网站可以导航到此区域 ** 
2102 其他:允许由脚本初始化的窗口,没有大小和位置限制 ** ^ 
2103 脚本:允许通过脚本更新状态栏 ^ 
2104 其他:允许网站打开没有地址或状态栏的窗口 ^ 
2105 脚本:允许网站使用脚本窗口提示信息 ^ 
2200 下载:文件下载自动提示 ** ^ 
2201 ActiveX 控件和插件:ActiveX 控件自动提示 ** ^ 
2300 其他:允许网页为活动内容使用受限制的协议 ** 
2301 其他:使用钓鱼网站筛选器 ^ 
2400 .NET Framework:XAML 浏览器应用程序 
2401 .NET Framework:XPS 文档 
2402 .NET Framework:松散 XAML 
2500 打开保护模式 [仅 Vista 设置] # 
2600 启用 .NET Framework 设置 ^  {AEBA21FA-782A-4A90-978D-B72164C80120} 第一方 Cookie * 
{A8A88C49-5EB2-4990-A1A2-0876022C854F} 第三方 Cookie * * 
表示 Internet Explorer 6 或更高版本设置 ** 
表示 Windows XP Service Pack 2 或更高版本设置 # 
表示未在 Internet Explorer 7 的用户界面中显示的设置 ^ 
表示只有“已启用”或“已禁用”两个选项的设置

关于 1200、1A00、1A10、1E05、1C00 和 2000 的说明

以下两个注册表项影响是否可以在特定区域中运行 ActiveX 控件:

  • 1200 此注册表项影响是否可以运行 ActiveX 控件或插件。
  • 2000 此注册表项控制 ActiveX 控件或插件的二进制行为和脚本行为。

关于 1A02、1A03、1A05 和 1A06 的说明

以下四个注册表项仅当以下项存在时才生效:

  • {AEBA21FA-782A-4A90-978D-B72164C80120} 第一方 Cookie *
  • {A8A88C49-5EB2-4990-A1A2-0876022C854F} 第三方 Cookie *

注册表项

  • 1A02 允许在计算机上存储的持久 cookie #
  • 1A03 允许每会话 cookie(未存储)#
  • 1A05 允许第三方持久 cookie *
  • 1A06 允许第三方会话 cookie *

这些注册表项位于以下注册表子项中:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\<ZoneNumber>

在此注册表子项中,<ZoneNumber> 是诸如 0(零)之类的区域。1200 注册表项和 2000 注册表项均包含一个名为管理员认可的设置。当启用了此设置时,特定注册表项的值会被设置为 00010000。当启用管理员认可设置时,Windows 会检查以下注册表子项以查找认可的控件列表:

HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\AllowedControls

登录设置 (1A00) 可以使用以下任一值(十六进制):

值 设置 --------------------------------------------------------------- 
0x00000000 自动使用当前用户名和密码登录 
0x00010000 用户名和密码提示 
0x00020000 只在 Intranet 区域自动登录 
0x00030000 匿名登录

隐私设置 (1A10) 由“隐私”选项卡滑块使用。DWORD 值如下:

禁止所有 Cookie: 00000003
高: 00000001
中高: 00000001
中: 00000001
低: 00000001
接受所有 Cookie:00000000

它还会根据滑块中的设置,修改 {A8A88C49-5EB2-4990-A1A2-0876022C854F} 和/或 {AEBA21Fa-782A-4A90-978D-B72164C80120} 中的值。
软件频道权限 (1E05) 具有三个不同的值:高、低和中安全度。对应的值是:

高: 00010000
中: 00020000
低:00030000

Java 权限设置 (1C00) 具有以下五个可能的值(二进制):

值 设置 ----------------------- 00 00 00 00 禁用 Java 00 00 01 00 安全度 - 高 00 00 02 00 安全度 - 中 00 00 03 00 安全度 - 低 00 00 80 00 自定义

如果选择“自定义”,它使用 {7839DA25-F5FE-11D0-883B-0080C726DCBB}(位于同一注册表位置)在二进制文件中存储自定义信息。

每个安全区域都包含描述字符串值和显示名称字符串值。在“区域”框中单击某个区域时,这些值的文本将出现在“安全”选项卡上。还有一个“图标”字符串值,用于设置为每个区域显示的图标。除了“我的电脑”区域外,每个区域都包含 CurrentLevelMinLevel 和 RecommendedLevel DWORD 值。MinLevel 值设置在出现警告消息前可以使用的最低设置;CurrentLevel 是区域的当前设置;RecommendedLevel 是区域的建议级别。

MinlevelRecommendedLevel 和 CurrentLevel 值的含义如下:

值(十六进制) 设置 ---------------------------------- 
0x00010000 安全度 - 低 
0x00010500 安全度 - 中低 
0x00011000 安全度 -中 
0x00012000 安全度 - 高

Flags DWORD 值决定用户能否修改安全区域的属性。若要确定 Flags 值,请将相应设置的数目加在一起。可以使用以下 Flags 值(十进制):

值 设置 ------------------------------------------------------------------ 
1 允许更改自定义设置 
2 允许用户向该区域中添加网站 
4 需要经过验证的网站(https 协议) 
8 包括绕过代理服务器的网站 
16 包括在其他区域中没有列出的网站 
32 不在 Internet 属性中显示安全区域(“我的电脑” 的默认设置) 
64 显示“要求服务器验证”对话框 
128 将通用命名连接 (UNC) 看作 Intranet 连接

如果向 HKEY_LOCAL_MACHINE 和 HKEY_CURRENT_USER 子树中添加设置,则这些设置是相加的。如果向两个子树中添加网站,则只能看到 HKEY_CURRENT_USER 中的那些网站。HKEY_LOCAL_MACHINE 子树中的网站仍按照它们的设置执行。但是,它们是不可用的,也无法对其进行修改。由于网站只能在每个协议的一个安全区域中列出,这可能会造成混淆。

上一篇:HTML5中已经不支持元素汇总,持续更新


下一篇:NGINX高性能Web服务器详解(读书笔记)