在 COM+ 中使用軟體限制原則

正確使用軟體限制原則可讓企業更靈活,因為它提供主動式架構來防止問題,而不是依賴在發生問題之後還原系統的成本高昂替代方案的回應式架構。 軟體限制原則是在 Microsoft Windows XP 版本引進的,可協助保護系統免於未知且可能危險的程式代碼。 限制原則提供一種機制,其中只有信任的程式代碼可以不受限制地存取用戶的許可權。 未知的程式代碼,可能包含與目前已安裝之程式衝突的病毒或程序代碼,只允許在受限制的環境中執行(通常稱為 沙盒),不允許其存取任何安全性敏感性用戶許可權。

軟體限制原則取決於將信任層級指派給可在系統上執行的程序代碼。 目前存在兩個信任層級:不受限制和不允許。 具有不受限制信任等級的程式代碼會獲得不受限制的使用者許可權存取權,因此此信任層級應該只套用至完全信任的程序代碼。 不允許具有不允許信任等級的程式代碼無法存取任何安全性敏感性的用戶許可權,而且只能在沙盒中執行,以協助防止不受限制的程式代碼將不允許的程式代碼載入其位址空間。

設定系統的軟體限制原則是透過本機安全策略系統管理工具來完成,而個別 COM+ 應用程式的限制原則設定則是透過程式設計方式或透過元件服務系統管理工具來完成。 如果未為 COM+ 應用程式指定限制原則信任層級,則會使用全系統設定來判斷應用程式的信任層級。 COM+ 限制原則設定必須與全系統設定仔細協調,因為具有不受限制信任層級的 COM+ 應用程式只能載入具有不受限制信任等級的元件;不允許的 COM+ 應用程式可以使用任何信任層級載入元件,但無法存取所有用戶的許可權。

除了個別 COM+ 應用程式的軟體限制原則信任層級之外,另外兩個屬性會決定限制原則如何用於所有 COM+ 應用程式。 如果 已啟用 SRPRunningObjectChecks ,將會檢查嘗試連線到執行中的物件是否有適當的信任層級。 執行中的物件不能有比客戶端物件更嚴格的信任層級。 例如,如果客戶端物件具有不受限制的信任等級,則執行中的物件不能有不允許的信任等級。

第二個屬性會決定軟體限制原則如何處理啟動即啟動器連線。 如果 已啟用 SRPActivateAsActivatorChecks ,則針對伺服器物件設定的信任層級會與客戶端物件的信任層級進行比較,而且會使用更嚴格的信任層級來執行伺服器物件。 如果未啟用 SRPActivateAsActivatorChecks,伺服器物件將會以客戶端物件的信任層級執行,而不論其設定的信任層級為何。 根據預設,會啟用 SRPRunningObjectChecks 和 SRPActivateAsActivatorChecks。

客戶端驗證

用戶端模擬和委派

設定軟體限制原則

連結庫應用程式安全性

多層式應用程式安全性

程序設計元件安全性

角色型安全性 管理員