增加使用權限

更新:2007 年 11 月

依照 Managed 應用程式的撰寫方式,如果它在執行時所需要的使用權限超過目前原則所允許的使用權限,將會擲回例外狀況 (Exception)、無法執行,或操作不正常。您可以使用使用權限檢視工具 (Permview.exe) 來檢視要求的最小使用權限、要求的選擇性 (Optional) 使用權限和組件拒絕的使用權限,然後將組件要求的使用權限與實際收到的使用權限加以比較。請注意,這個工具只會顯示應用程式使用宣告性語法明確要求的使用權限。有了這項資訊之後,您可以藉由建立新的自訂程式碼群組,然後建立它和新的自訂使用權限集合 (包含應用程式正常執行時所需要的所有使用權限) 之間的關聯,來增加組件所收到的使用權限。但是,您必須要信任應用程式的來源,才增加使用權限,而且信任必須以確實可靠的辨識項為基礎 (大多數情況下,管理員將會有幾個自訂程式碼群組,可用來將需要類似使用權限的應用程式加以分類)。

假設您有一個應用程式,經常會有多位使用者透過網路共用來進行存取。在 Unmanaged 環境中,這個情況通常不會造成執行上的問題。但是,在 Managed 環境中,由於這個應用程式來自近端內部網路區域,因此可能只會將有限的使用權限集合授與這個應用程式。例如,您可能不允許這個應用程式具有完整的列印使用權限,如此一來,便會限制這個應用程式的可用性。此時,您不應該減弱整個近端內部網路區域的設定,而是執行下列工作:

  1. 使用使用權限檢視工具 (Permview.exe) 來檢視要增加其使用權限的組件所要求的最小使用權限。這是指應用程式執行時至少需要有的使用權限。

  2. 辨識組件的唯一特性。這個特性可包括組件的強式名稱、公開金鑰、雜湊或唯一的自訂屬性。如果應用程式來自受信任的伺服器,也可以用位置來辨識應用程式。請記住,您可信任具有這個特性的所有程式碼。

  3. 建立需要有成員資格唯一識別項的新程式碼群組。使用 .NET Framework 組態工具 (Mscorcfg.msc)程式碼存取安全性原則工具 (Caspol.exe) 建立程式碼群組。

  4. 使用 .NET Framework 組態工具或程式碼存取安全性原則工具,建立新的使用權限集合 (包含組件執行時至少需要有的所有使用權限)。

  5. 使用 .NET Framework 組態工具或程式碼存取安全性原則工具,在新的使用權限集合和新的程式碼群組之間建立關聯。

完成這些步驟之後,應用程式就會執行,並收到正常操作所需的足夠使用權限。而其他較不受到信任的應用程式,將不會收到額外的使用權限,如此便有助於防止您的系統受到惡意程式碼的攻擊。如需使用安全性工具執行特定工作的詳細資訊,請參閱安全性原則組態

請參閱

其他資源

一般安全性原則管理

安全性原則的最佳作法