增益集安全性

更新:2007 年 11 月

為了增強安全性,防止惡意的增益集 (Add-In) 自動啟動,Visual Studio 2005 在名為 [增益集/巨集安全性] 的 [工具選項] 頁中提供了相關設定。

此外,這個選項頁還可讓您指定 Visual Studio 搜尋 .Addin 登錄檔案的資料夾。這麼做可讓您限制能讀取 .Addin 登錄檔案的位置,以防不慎使用到惡意的 .Addin 檔案,如此便能增強安全性。

增益集安全性設定

選項對話方塊、環境、增益集/巨集安全性中與增益集安全性相關的設定包括:

  • [允許載入增益集元件]:此設定預設為選取。如果選取,就可以在 Visual Studio 中載入增益集。如果未選取,則禁止在 Visual Studio 中載入增益集。

  • [允許從 URL 載入增益集元件]:此設定預設為未選取。如果選取,就可以從外部網站載入增益集。如果未選取,則禁止在 Visual Studio 中載入遠端增益集。如果增益集因為某種原因無法載入,那麼便無法從網路載入。這項設定只能控制增益集 DLL 的載入。.Addin 登錄檔案必須隨時位於本機系統中。

預設 .Add-In 檔案搜尋位置

除了安全性設定外,選項頁中還有一個清單會列出搜尋 .Addin 登錄檔案的資料夾。預設包含下列語彙基元 (Token):

  • %ALLUSERSPROFILE%

  • %APPDATA%

  • %USERPROFILE%

  • %VSAPPDATA%

  • %VSCOMMONAPPDATA%

當 Visual Studio 開始搜尋 .AddIn 檔案時,它會用下列路徑字串取代這些語彙基元:

語彙基元

路徑

%ALLUSERSPROFILE%

C:\Documents and Settings\All Users\Application Data\Microsoft\MSEnvShared\Addins

%APPDATA%

C:\Documents and Settings\<username>\Application Data\Microsoft\MSEnvShared\Addins

%USERPROFILE%

C:\Documents and Settings\<username>\My Documents\Visual Studio 2005\Addins

%VSAPPDATA%

C:\Documents and Settings\<username>\Addins

%VSCOMMONAPPDATA%

C:\Documents and Settings\All Users\Addins

您可以反白顯示語彙基元並按一下 [移除],將這些預先定義的語彙基元從清單中移除。若要在搜尋清單中加入其他資料夾,請按一下 [加入],並在 [瀏覽資料夾] 對話方塊中指定資料夾。如需詳細資訊,請參閱增益集登錄

限制修改選項頁

若要防止使用者修改 [增益集/巨集安全性] 選項頁中的設定,系統管理員可以在系統登錄中設定一個值。這個值的名稱為 AllowUserToModifySecuritySettings,儲存在 HKLM\Software\Microsoft\VisualStudio\8.0\AutomationProperties 機碼中。如果這個機碼值不存在或設定為 0,則 [增益集/巨集安全性] 頁中的所有選項都會停用 (也就是無法變更此頁中的設定)。這項設定也適用於巨集整合式開發環境 ([巨集 IDE]),但是登錄機碼 (Registry Key) 的位置為:HKLM\Software\Microsoft\VSA\8.0\AutomationProperties

[增益集/巨集安全性] 頁的設定儲存在 HKLM\Software\Microsoft\VisualStudio\8.0\AutomationPropertiesHKCU\Software\Microsoft\VisualStudio\8.0\AutomationProperties 機碼的登錄中。安全按鈕收到值時,會先查看 HKEY_LOCAL_MACHINE 中的機碼。如果該機碼不存在,則會使用 HKEY_CURRENT_USER 值。例如,系統管理員可以利用此方式啟用增益集和巨集的載入功能,但是如果使用者選擇要停用這些元件的載入功能,也可以這麼做。不過,如果系統管理員已停用增益集或巨集的載入功能,則不具有系統管理權限的使用者就無法啟用載入功能。如果已選取載入增益集的設定,則會在 HKLM\SOFTWARE\Microsoft\VisualStudio\8.0\AutomationOptions\LookInFoldersHKCU\SOFTWARE\Microsoft\VisualStudio\8.0\AutomationOptions\LookInFolders 機碼中所指定的資料夾內搜尋是否有 .Addin 檔案。

變更此頁中選項的系統管理員可以將值寫入至 HKEY_LOCAL_MACHINE 登錄區中的任何機碼,如此便會為該部電腦的所有使用者修改這些設定。

請參閱

概念

在 Automation 中安全性的最佳作法

增益集登錄

巨集安全性和共通問題

參考

選項對話方塊、環境、增益集/巨集安全性