驗證真實的管理員權限
雖然最初的方法可以有效地檢測管理員權限,但它們不能可靠地區分標準管理員帳戶和具有提升權限的帳戶(例如,在 vshost.exe 中運行)。 這種改進的方法使用了更強大的技術。
利用 UacHelper 類別
我們使用 UacHelper 類別來準確地確定海拔狀態。 此類徹底檢查系統註冊表以驗證使用者帳戶控制 (UAC) 狀態。 然後,它使用高級方法,包括 OpenProcessToken
和 GetTokenInformation
來分析當前進程的海拔高度。
詳細海拔分析
UacHelper 類別中的 IsProcessElevated
屬性執行以下關鍵步驟:
OpenProcessToken
檢索進程的安全令牌。 GetTokenInformation
擷取高程類型(完整/高架、有限或預設)。 解釋海拔結果
IsProcessElevated
屬性回傳:
True
: 提升類型為“full”,表示提升的權限。 False
: UAC 已停用,或標高類型為「受限」或「預設」。 這種增強的方法提供了一種可靠的方法來確認您的應用程式是否以真正提升的權限運行,無論管理員上下文如何。
以上是我的管理員帳號真的被提升了嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!