ChangeWindowMessageFilterEx 概述(用於取消低許可權程式向高許可權程式發送訊息不成功的限制,分6個等級)

來源:互聯網
上載者:User

標籤:clip   art   gpo   hang   last   無法   clipboard   傳遞   不同   

ChangeWindowMessageFilterEx 函數,為指定視窗修改使用者介面權限隔離 (UIPI) 訊息過濾器。

函數原型:

 

[cpp] view plain copy 
  1. BOOL WINAPI ChangeWindowMessageFilterEx(  
  2.   __in HWND hWnd,  
  3.   __in UINT message,  
  4.   __in DWORD action,  
  5.   __inout_opt PCHANGEFILTERSTRUCT pChangeFilterStruct  
  6.   );  

【參數】
hWnd
要修改其 UIPI 訊息過濾器的視窗控制代碼。
message
要允許或阻止通過訊息過濾器的訊息。
action
要執行的操作,可以採取下列值之一:
MSGFLT_ALLOW :允許訊息通過過濾器。允許視窗接收該訊息,不管源訊息是什麼,甚至它來自一個低特權的進程。
MSGFLT_DISALLOW :如果訊息來自低特權的進程,阻止它轉遞給視窗。
MSGFLT_RESET :為視窗重設訊息過濾器為預設,任何全域允許訊息或進程範圍內的將通過。但不包含這兩個類別,其中其中來自低特權的進程將被阻塞。
pChangeFilterStruct
指向CHANGEFILTERSTRUCT結構指標的可選項。

 

【傳回值】
如果函數成功,則傳回值為非零值。
如果該函數失敗,則傳回值為零。要擷取擴充的錯誤的資訊,請調用GetLastError 。


eg:
//用於取消低許可權程式向高許可權程式發送訊息不成功的限制
BOOL bRes = ChangeWindowMessageFilterEx(m_hWnd, WM_COPYDATA, MSGFLT_ALLOW, NULL);


--------------------------------------------------------------------------------------------------------------------------------
        UIPI:使用者介面權限隔離(User Interface Privilege Isolation),是 Windows 7 通過 MIC 機制新引入的一種安全特性,用於攔截接收比自身進程 MIC 等級低的進程發來的訊息。UIPI 的目的是為了規範不同進程視窗之間的視窗訊息處理過程,預設情況下,高許可權進程不會接收到低許可權進程發送的視窗訊息的,但是低許可權進程能夠接收到高許可權進程的視窗訊息。UIPI 的本質是系統檢查目標視窗和發送方是否具有相同的 MIC 等級或者發送方具有更高的 MIC 等級,如果符合上述條件,則允許訊息的傳遞,否則將訊息丟棄。
        因此,在 Windows 7 作業系統中啟動並執行使用者進程,如果運行時具有不同的完整性等級,即具有不同的 MIC 等級,那麼相互間的通訊將會無法像 Windows XP 那樣正常進行。

 

        MIC:訊息完整性檢查(Message Integrity Check),是 Windows 7 增加的 Windows 安全性實體存取控制安全機制,系統利用完整性層級對一個安全性實體進行標記,通過降低進程的完整性層級可以限制其對安全性實體的寫入許可權,這一點類似於使用者帳戶組的成員被限制訪問系統組件這種方式。完整性檢查機制使得用更少的許可權或以更低的完整性層級運行一些程式,會降低進程修改系統或損害使用者資料檔案的可能性。在 Windows 7 中訊息完整性檢查分為 6 個等級,如下所示:

 

MIC等級 說明
SECURITY_MANDATORY_UNTRUSTED_RID 不信任的MIC等級
SECURITY_MANDATORY_LOW_RID 低MIC等級,如IE
SECURITY_MANDATORY_MEDIUM_RID 中MIC等級,預設為這個等級,如Explorer
SECURITY_MANDATORY_HIGH_RID 高MIC等級,以管理員身份啟動並執行程式
SECURITY_MANDATORY_SYSTEM_RID 系統MIC等級,一般是服務應用程式
SECURITY_MANDATORY_PROTECTED_PROCESS_RID 被保護進程的MIC等級

 

70158598

ChangeWindowMessageFilterEx 概述(用於取消低許可權程式向高許可權程式發送訊息不成功的限制,分6個等級)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.