您目前已離線,請等候您的網際網路重新連線

不支援您的瀏覽器

您必須更新瀏覽器,才能使用此網站。

更新至最新版本的 Internet Explorer

安全性、 服務和互動式桌面上 Windows 中

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:327618
簡介
在 Windows 中的服務通常是設計執行自動安裝的主控台應用程式。因此,服務通常沒有使用者介面。但是,服務可能會需要與在某些情況下使用者互動。
其他相關資訊
重要我們強烈建議該服務 不是這樣 互動服務身分執行,如果該服務在如 SYSTEM 一個較高的安全性內容下執行。

Windows 使用者介面的桌面是安全性界限。 任何在互動式桌面上執行的應用程式可以與位於在互動式桌面上任何視窗互動,即使如果該視窗沒有顯示在桌面上。這種行為是真,每個應用程式,無論建立視窗應用程式的安全性內容並不論在桌面上執行的應用程式的安全性內容。Windows 訊息系統不允許應用程式判斷視窗訊息的來源。

因為這些設計] 功能的開啟視窗,以在互動式桌面上任何服務公開本身登入的使用者所執行的應用程式。 如果該服務會嘗試使用視窗訊息控制其功能,登入的使用者可以藉由使用惡意郵件中斷該功能。

這是最佳您先評估安全性問題以 SYSTEM 的支援互動式桌面上使用 OpenWindowStation 函式與 GetThreadDesktop 函式的呼叫,並,建立使用者介面執行的任何服務。

在 Microsoft Windows NT 4.0 和 Microsoft Windows 2000 中,安全性限制並不會完全強制用於存取一個互動式視窗工作站的預設桌面。當應用程式嘗試繪製使用者介面時上視窗工作站, 的安全性不是查詢的 WINSTA_READSCREEN 存取權限。如果登入安全性識別元 (SID) 不具有此存取到視窗站,該 SID 下執行的處理序應該無法存取螢幕內容。

在 Microsoft Windows XP 中這項限制會正確地強制執行。當下 SID 會試著繪製至畫面的登入執行序 GDI 子系統會驗證登入語彙基元 (Token) 是否具有 WINSTA_READSCREEN 存取權限。如果登入權杖不具有存取,繪製作業並不會完成。這種行為會使繪圖的缺陷。當您使用的 LogonUser 屬性已取得語彙基元 (Token) 執行 GUI 應用程式時,就可以看到這些瑕疵。LogonUser 屬性是目前登入使用者的使用者名稱。

我們建議的用戶端/伺服器技術如遠端程序呼叫 (RPC) 通訊端,具名管道或 COM 與從服務登入的使用者互動的服務寫入器使用。此外,我們建議您使用 MessageBox 函式搭配 MB_SERVICE_NOTIFICATION 旗標,來顯示簡單的狀態訊息。

警告:本文為自動翻譯

內容

文章識別碼:327618 - 最後檢閱時間:11/03/2005 20:18:42 - 修訂: 2.1

  • Microsoft Platform Software Development Kit-January 2000 Edition
  • kbmt kbdevsecurity kbshell kbui kbgdi kbinfo KB327618 KbMtzh
意見反應
script>");