共用方式為


How to:評估及核准表單範本

本文內容:

  • 關於評估表單範本

  • 評估表單範本要考量的因素

本文為 Microsoft Office SharePoint Server 2007 伺服器陣列的管理員提供有關如何評估供核准之用的管理員核准表單範本的詳細資訊。請注意,本文不擬提供每個要考量因素的完整清單。因環境不同,可能有本文未列出的其他考量。

關於評估表單範本

如果您負責核准 Office InfoPath 2007 表單範本並上傳至使用 InfoPath Forms Services 的伺服器陣列,您應該知道如何識別您核准之表單範本可能發生的問題。因為表單範本會包含使用伺服器資源或建立伺服器陣列外資料來源連線的功能 (例如,伺服器陣列開發人員新增的 managed 程式碼),所以仔細評估表單範本會如何影響伺服器陣列效能及安全性,非常重要。

Office InfoPath 2007 的設計旨在讓管理員專注於表單範本的核准工作流程。如果負責核准表單範本的管理員在核准表單範本時不夠謹慎,可能會發生下列後果:

  • 造成網路侵入或資料遺失的安全性缺口。

  • 有害伺服器陣列效能的影響。

  • 造成使用者資料遺失的表單範本失敗。

  • 整個 Office SharePoint Server 伺服器陣列失敗。

因此,您應嚴格評估每份管理員核准的表單範本後,再將表單範本上傳到伺服器陣列。請注意,正確評估表單範本需要對表單範本結構與邏輯有相當的認識。如需 Office InfoPath 2007 表單範本的詳細資訊,請參閱 InfoPath 2007 說明 (https://go.microsoft.com/fwlink/?linkid=91423&clcid=0x404) 。

評估表單範本要考量的因素

評估表單範本要考量的重要因素:

  • Managed 程式碼   建立適當的規則及最佳作法,為表單範本撰寫程式碼。包含 managed 程式碼的表單範本一定具有「網域」或「完全信任」安全性層級,因此才會造成安全性風險。確認表單範本的程式碼為表單運作所必須。如果所要的功能不使用程式碼也可實現,請重新設計表單範本並將其設為可能的最嚴格安全性層級。請注意,評估表單範本程式碼可能需要開發人員層級的技能。

    以下清單提供評估表單範本程式碼時要考量的主要因素。

  • **效能及容量規劃   **表單範本設計與使用會大幅影響伺服器陣列的效能,所有的實際執行環境都應加以規劃。如果表單是用於將資料送出到伺服器陣列,請確定伺服器陣列有足夠的容量可儲存資料,否則使用者資料可能會遺失。如需詳細資訊,請參閱<規劃效能和容量 (Office SharePoint Server)>。

  • 檢查表單範本   將表單範本上載到管理中心網站之前,請按一下 [上載表單範本] 頁面上的 [檢查] 按鈕。若不手動檢查表單範本,它會在上載程序中自動檢查。但手動檢查會傳回訊息及錯誤,而自動檢查僅會傳回錯誤 (若有)。如需確認及上載表單範本的詳細資訊,請參閱<部署管理員核准的表單範本 (Office SharePoint Server)>。

  • 驗證   若使用 NTLM 驗證,請考慮 NTLM 僅能驗證用戶端電腦。在驗證 token 必須傳遞到第三資源的案例中,如當表單呼叫的 Web 服務必須將資料送出到資料庫時,第三資源的 NTLM 驗證會失敗。發生此種狀況時,請考慮使用其他為傳遞驗證 token 所設計的驗證方法,如 Kerberos 驗證。只要可能,表單範本應使用集中管理的資料連線儲存區的資料連線檔案,建立對外部資料來源的連線。如需資料連線的詳細資訊,請參閱本文後文的<資料連線>。

  • 安全性層級   確定表單範本的安全性層級適合表單目的。例如,不使用需要網域驗證資料連線、不包含 managed 程式碼或不向其他網域資源要求資料的表單範本,不應設定為「完全信任」安全性層級。如需詳細資訊,請參閱 InfoPath 表單的安全性層級 (https://go.microsoft.com/fwlink/?linkid=91447&clcid=0x404) 。

  • 密碼   確認密碼及其他驗證資訊未硬式編碼在表單範本中。表單範本中需要驗證的所有功能,都應在填寫表單或使用驗證資料連線時,經過使用者驗證。而且密碼不應儲存在表單範本的資料來源中,也不應以純文字送出。

  • 權限   表單範本作者應指定唯讀權限給表單使用者、寫入權限給表單維護人員,而所有其他人則無任何存取權,以限制實際執行的表單範本之存取權。即使表單範本是由登入指令碼安裝在使用者電腦,如果使用者不以管理員身分執行,您仍然可以控制對 .xsn 檔案的存取。只要授與使用者範本檔案的唯讀權限即可。

  • 機密資料   Office InfoPath 2007 表單範本是純文字的 XML 文件,不應包含任何不想向使用者公開的資料。有讀取權限的惡意使用者,只要使用「記事本」或任何其他文字編輯器,規避任何驗證邏輯,即可讀取 Office InfoPath 2007 XML 表單的內容。

  • 商務邏輯   Office InfoPath 2007 使用表單範本儲存所有表單邏輯。因為使用者必須有表單範本的存取權,才能開啟任何以該表單範本為基礎的表單,他們可能會修改表單範本、規避作者設下的任何限制。這表示在用戶端執行的驗證及授權其實不甚安全。必須在伺服器端執行計算及資料驗證,才能確保安全。

    下列範例顯示設計表單範本使用伺服器端計算及驗證的方法。

    • 請勿以 XML 檔案儲存機密資料。改以 XML 檔案儲存金鑰,執行查詢利用資料庫連線或 Web 服務填入其餘的資料。使用者若未經授權,即會傳回空白的資料集。您可偵測用戶端的此種狀況,並在發生使用者無權檢視表單資料的事件時,顯示容易明白的錯誤訊息。

    • 於送出時,將資料傳送到 Web 服務,並在伺服器端執行所有可能的驗證。例如,如果員工未指定核准者即不會送出超過 $100 美元的費用報告,請指示 Web 服務處理資料集,並在資料送出前確認是否符合條件。

  • 資料連線   只要可能,請確定表單範本作者使用儲存在集中管理資料連線儲存區之資料連線檔案的資料連線設定,建立表單範本對外部資源的連線。使用集中管理的資料連線檔案有下列好處:

    • 多個表單可以使用同一個資料連線檔案,所以不需要為每個表單重新建立資料連線。

    • 如果外部資料來源的位置或連線設定改變,您僅必須更新資料連線檔案,不必更新每個表單範本。

    • 當使用者使用瀏覽器填寫表單時,資料連線檔案可以包含伺服器可使用的其他驗證資料。

    • 如果表單中的所有資料連線都使用資料連線檔案,在沒有「完全信任」安全性層級的瀏覽器中填寫的表單,還是可以連線到其他網域中的電腦。如需詳細資訊,請參閱資料連線簡介 (https://go.microsoft.com/fwlink/?linkid=91449&clcid=0x404) 。

  • 外部相依性   表單範本可使用外部資源,如資料連線、Web 服務、資料庫及文件庫等等。在提供表單範本供使用之前,請先確認所有的外部資源都有效且可使用。

  • 資訊版權管理   資訊版權管理 (IRM) 無法用以保護供瀏覽器使用的表單範本。

另請參閱

其他資源

表單範本及表單的安全性考量
InfoPath 表單的安全性層級
InfoPath 2007 說明
資料連線簡介
設定表單範本的必要安全性層級
安全的編碼規則 (英文)
MSDN 程式碼庫 (英文)
How to:使用強式名稱簽署組件