欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-03-09 13:53:37
引用网址:http://support.microsoft.com/kb/182569/zh-cnInternet Explorer 安全区域设置存储在以下注册表子项下面: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\In ......

引用网址: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 知识库中相应的文章:

  (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 子树中的网站仍按照它们的设置执行。但是,它们是不可用的,也无法对其进行修改。由于网站只能在每个协议的一个安全区域中列出,这可能会造成混淆。