Office 解決方案開發人員的安全性提示

在測試環境中設定 Office 安全性

注意事項

您可以包含 Visual Basic for Applications (VBA) 程式碼,或只在啟用巨集檔、工作表或簡報中執行 COM 增益集。 您可以在 Word 中儲存副檔名為 .docm 或 .dotm 的檔,以建立啟用巨集檔案;Excel 中的 .xlsm、.xltm 或 .xlam 延伸模組;或 PowerPoint 中的 .pptm、.potm、.ppam 或 .ppsm 延伸模組。

若要安裝並執行未簽署的 COM 增益集,必須在信任中心的 [載宏] 索引標籤上清除 [需要由信任的發行者簽署應用程式加載宏] 和 [停用所有應用程式載入宏] 選項。 若要開啟[增益集] 索引標籤,請選擇 [檔案]索引標籤,然後選擇 [選項>信任中心信任中心> 設定 >] 增益集

若要執行所有 VBA 宏,包括尚未數位簽署的 VBA 宏,必須在信任中心選取 [ 啟用所有宏 ] 選項。 若要檢視[宏設定]選項,請選擇 [檔案]索引標籤,然後選擇 [選項>信任中心信任中心> 設定 >宏設定]。 基於安全性理由,強烈建議您只在測試環境中執行此動作。 完成測試之後,請將選項設定回其原始狀態。

在 [信任中心 ] 的 [宏設定] 索引標籤上,將選項設定為 [ 停用所有宏而不通知]、 [停用所有含有通知的宏] 或 [ 停用數位簽章宏以外的所有宏]。 停用宏,方法是將 Word 檔、Excel 工作表或 PowerPoint 簡報分別儲存為宏停用的檔案 (.docm、.xlsm 或 .pptm,分別) 。 從 [宏設定] 索引標籤選取或清除 [信任存取 VBA 專案物件模型] 選項,以設定或停用對 VBA 專案物件模型存取。

注意事項

在 Office Fluent 使用者介面功能區上,當 COM 和應用程式特定的增益集啟用並載入時,其控制項會顯示在 [ 增益集] 索引標籤上。

請參閱信任中心的 [ 載入 宏] 索引標籤上的可用增益集清單。 在同一個索引標籤上,選取 [ 管理 ] 標籤旁下拉式方塊中的增益集類型,以啟用、停用、新增或移除 COM 或 Word 增益集,然後選擇 [ 執行 ] 按鈕。

修改 Windows 登錄

以任何方式修改 Windows 登錄,不論是在登錄編輯程式中還是以程式設計方式,都一律會有某種程度的風險。 不正確的修改會導致嚴重的問題,而可能需要重新安裝作業系統。 在修改電腦登錄之前,最好先備份電腦的登錄。 如果您執行的是 Microsoft Windows NT、Windows 2000、Windows XP 或 Windows Server 2003,您也應該更新緊急修復磁片 (ERD) 。

如需如何編輯登錄的相關資訊,請參閱註冊表編輯器 (Regedit.exe) 中的變更機碼和值說明主題,或在登錄編輯程式 (Regedt32.exe) 的登錄和編輯登錄資訊主題中新增和刪除資訊

進行 Windows API 函式呼叫

在呼叫 Windows 應用程式開發介面 (API) 函式之前,您應該瞭解 Windows API DLL 如何處理引數和資料類型。 不正確地呼叫 Windows 函式可能會導致不正確分頁錯誤或其他非預期的行為。 For more information about how to call Windows functions, see the topic "The Windows API and Other Dynamic-Link Libraries" in the Office 2000 Developer Online Documentation.

數位簽署程式碼

數位簽署檔是「戳記」檔的程式,讓檔的收件者可以確保檔來自特定來源,而且可以偵測檔的內容在簽署檔之後是否已變更。 此外,數位簽章可用來將檔標示為唯讀,以保護檔的真實性和完整性。

除了數位簽章之外,檔也可以包含檔內容中可見的檔內簽章。 檔的寄件者可以建立不帶正負號的檔,其中包含可傳送至收件者進行簽署的簽名欄。 收件者會開啟檔、找出簽名欄、簽署檔,然後將它傳回給寄件者。

基本上,數位簽署檔的步驟包括:

  1. 檔的產生者會使用稱為「雜湊」的程式,將檔的內容壓縮成幾行。壓縮的內容稱為訊息摘要。 雜湊是由針對該目的建立的軟體所執行。
  2. 檔的寄件者接著會使用從簽署授權單位取得的私密金鑰來加密訊息摘要。 結果是數位簽章。
  3. 寄件者會將數位簽章附加至檔。 所有已雜湊的資料現在已簽署,且簽章已加密並附加至檔。
  4. 然後,寄件者會將檔傳送給收件者。
  5. 收件者會先使用從寄件者收到的公開金鑰來解密檔。 這會將簽章變更回訊息摘要。 如果這可行,它會證明檔是由寄件者簽署。
  6. 收件者使用數位簽章軟體,將檔雜湊至訊息摘要,並將此雜湊與寄件者的雜湊進行比較。 如果相符,這會驗證自源者傳送檔以來,檔的內容並未變更。

自 Office XP 以來,客戶已可使用數位簽章。 不過,Office 2007 新增的功能可讓使用者更輕鬆地數位簽署檔、簽署檔使其成為唯讀檔案,以及將內嵌檔簽章行新增至檔。 Office 使用者可以從 [檔案] 索引標籤上可用的 Office 使用者介面執行這些 工作

Office 2007 也引進了成員,可讓您更輕鬆地以程式設計方式使用內建簽章和數位簽章。

安全地在 Office 中部署受控 COM 增益集

若要符合 Office 安全性,必須以數位方式簽署以 Common Language Runtime) 為目標的管理 COM 增益集 (COM 增益集,而且應該在 Office 信任中心設定使用者的安全性設定,以允許 Office 應用程式中的增益集。 此外,您必須將稱為 填充碼 的小型 Unmanaged Proxy 併入受控 COM 增益集專案中,以避免發生非預期的安全性警告。

自動化 Visual Basic 編輯器

在 Office 中,呼叫 Visual Basic for Applications Extensibility 物件模型的功能時,您可能會收到錯誤訊息,指出無法信任以程式設計方式存取 Visual Basic 專案。 若要防止此訊息出現,請選擇 [檔案] 索引標籤 >[選項>信任中心] 索引標籤,然後選擇 [信任中心設定]。 接下來,在 [ 宏設定] 索引卷 標上,選擇 [ 信任存取 VBA 專案物件模型] 方塊。 核取此方塊,即可讓您開啟的任何啟用巨集檔中的宏存取核心 Visual Basic 物件、方法和屬性。

設定 選項表示可能的安全性危險。 建議的行為是只在存取 Visual Basic 物件模型的宏期間,勾選 [信任 存取 VBA 專案物件模型 ] 方塊。 確定您在宏完成執行之後,清除 [ 信任存取 VBA 專案物件模型 ] 方塊。

使用密碼

Avoid using hard-coded passwords in your applications. If a password is required in a procedure, request the password from the user, store it in a variable, and then use the variable in your code.

請一律使用強式密碼。 強式密碼應包含:

  • 小寫和大寫字元
  • 數字
  • 符號 (例如 #、$、% 和 ^)
  • 至少八個字元

強式密碼不應包含在字典中找到的模式、主題或單字。

強式密碼的範例包括:

  • $tR0n9p@$s
  • G80dn[s$M4!

注意事項

您應該經常變更密碼;例如,每隔一到三個月。

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應