外接程序安全性
为了防止恶意外接程序自动激活进而增强安全性,Visual Studio 在名为**“外接安全性”的“工具选项”**页中提供了一些设置。
另外,该选项页使您可以指定供 Visual Studio 在其中搜索 .Addin 注册文件的文件夹。这种方式可让您对可读取 .Addin 注册文件的位置进行限制,并可帮助防止意外使用恶意 .Addin 文件,增强了安全性。
外接程序安全性设置
与外接程序安全性相关的“外接程序安全性”、“环境”和“选项对话框”中的设置为:
**允许外接程序组件加载。**默认情况下会选中。在选中时,允许在 Visual Studio 中加载外接程序。在未选中时,禁止在 Visual Studio 中加载外接程序。
**允许外接程序组件从 URL 加载。**默认情况下不会选中。在选中时,允许从外部网站加载外接程序。在未选中时,禁止在 Visual Studio 中加载远程外接程序。如果某个外接程序由于某种原因无法加载,则无法从网站加载它。此设置只控制外接程序 DLL 的加载。.Addin 注册文件必须始终位于本地系统上。
默认的 .Add-In 文件搜索位置
除安全设置外,选项页还有一个列表,它包含要在其中搜索 .Addin 注册文件的文件夹。默认情况下,包含以下标记:
%ALLUSERSDOCUMENTS%
%ALLUSERSPROFILE%
%APPDATA%
%VSAPPDATA%
%VSCOMMONAPPDATA%
%VSMYDOCUMENTS%
Visual Studio 开始搜索 .AddIn 文件时,会将这些标记替换为以下路径字符串:
标记 |
路径 |
---|---|
%ALLUSERSDOCUMENTS% |
%PUBLIC%\Documents |
%ALLUSERSPROFILE% |
%ALLUSERSPROFILE%(由操作系统定义) |
%APPDATA% |
%USERPROFILE%\AppData |
%VSAPPDATA% |
%USERPROFILE%\AppData\Roaming\Microsoft\Visual Studio\<Version> -- 或 -- %USERPROFILE%\AppData\Local\Microsoft\Visual Studio\<版本> |
%VSCOMMONAPPDATA% |
%ProgramData%\Microsoft\Visual Studio\<版本> |
%VSMYDOCUMENTS% |
<我的文档>\Visual Studio 2012 |
说明 |
---|
一些默认路径可能会解析为系统中不存在的目标。 |
通过突出显示该标记并单击**“移除”,可以从列表中移除这些预定义标记。若要向搜索列表添加其他文件夹,请单击“添加”并在“浏览文件夹”**对话框中指定文件夹。有关更多信息,请参见外接程序注册。
限制选项页修改
若要防止用户修改**“外接程序的安全性”选项页中的设置,管理员可以在系统注册表中设置一个值。该值名为 AllowUserToModifySecuritySettings,并存储在 HKLM\Software\Microsoft\VisualStudio\11.0\AutomationProperties 项下。如果该项值存在并设置为 0,则会禁用“外接程序的安全性”**页中的所有选项。(也就是说,不能更改该页上的设置。)
**“外接安全性”**页的设置存储在注册表中的 HKLM\Software\Microsoft\VisualStudio\11.0\AutomationProperties 和 HKCU\Software\Microsoft\VisualStudio\11.0\AutomationProperties 项下。安全按钮首先通过查找 HKEY_LOCAL_MACHINE 下的项来接收其值。如果该项不存在,则使用 HKEY_CURRENT_USER 值。例如,这样就使管理员可以启用加载外接程序,但允许用户选择禁用加载这些组件。不过,如果管理员已经禁用加载外接程序,没有管理员权限的用户则无法启用加载外接程序和宏。如果已选中加载外接程序的设置,则从 HKLM\SOFTWARE\Microsoft\VisualStudio\11.0\AutomationOptions\LookInFolders 和 HKCU\SOFTWARE\Microsoft\VisualStudio\11.0\AutomationOptions\LookInFolders 项下指定的文件夹中搜索可能的 .Addin 文件。
更改此页上的选项的管理员可以将值写入 HKEY_LOCAL_MACHINE 注册表配置单元下的任何项,该注册表配置单元用于修改计算机上所有用户的这些设置。