外接程序安全性

备注

在 Visual Studio 2013 中,弃用外接程序。我们建议您将外接程序升级到 VSPackage 扩展。有关详细信息,请参阅常见问题:将外接程序转换为 VSPackage 扩展

因此您可以防止恶意外接程序自动激活进而增强安全性,Visual Studio 在 工具, 选项 对话框的环境, 外接程序安全性 页面提供了设置。 另外在此页,您可以指定供 Visual Studio 在其中搜索 .AddIn 注册文件的文件夹数量。

外接程序安全性设置

外接程序安全性 的设置页面包括:

  • 允许加载外接程序组件。   当选择框被选中时,外接程序便可以加载。 默认情况下选中此选项。

  • 允许从url地址加载外接程序组件。   当选择框被选中时,外接程序便可以从外部网页加载。 如果某个外接程序由于某种原因无法加载,则无法从网站加载它。 此设置只控制外接程序 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\<Version>\(路径)

%VSCOMMONAPPDATA%

%ProgramData%\Microsoft\Visual Studio\<Version>\(路径)

%VSMYDOCUMENTS%

<My Documents>\Visual Studio 2013\(路径)

备注

一些默认值路径在您的系统可能不存在。

在该列表中选择一个预定义的令牌并选择 移除 可以移除该类。

你可以通过单击**“添加”并在“浏览文件夹”**对话框中指定文件夹向搜索列表添加其他文件夹。 有关详细信息,请参阅外接程序注册

在外接程序安全性页的限制的修改

更改外接程序安全性页上的设置的管理员可以将值写入 HKEY_LOCAL_MACHINE\的任何项,该注册表配置单元用于修改计算机上所有用户的这些设置。

若要防止**“外接程序/宏的安全性”选项页中未授权的修改,管理员可以在系统注册表中设置AllowUserToModifySecuritySettings值。 此值存储在 HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\11.0\AutomationProperties\键下。 如果该项值设置为 0,则“外接程序/宏的安全性”**页中的所有选项不能被除了管理员以外的任何人更改。

外接程序安全性页的设置存储在注册表项HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\11.0\AutomationProperties\ and HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\AutomationProperties\键值下。 Visual Studio 首先会在 HKEY_LOCAL_MACHINE\下寻找键值然后在 HKEY_CURRENT_USER 下。 此模型,管理员可以启用加载外接程序,但是,用户仍可以禁用加载;但是,因此,如果管理员已经禁用加载,非管理员用户无法启用它们。

加载外接程序启用,则指定的文件夹在 HKLM\SOFTWARE\microsoft\VisualStudio\11.0\AutomationOptions\LookInFolders 下\,并且 HKCU\software\microsoft\VisualStudio\11.0\AutomationOptions\LookInFolders\键进行搜索 .addin 文件。

请参见

概念

自动化安全的最佳做法

外接程序注册