|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 |
|
5 #ifndef _UACHELPER_H_ |
|
6 #define _UACHELPER_H_ |
|
7 |
|
8 class UACHelper |
|
9 { |
|
10 public: |
|
11 static HANDLE OpenUserToken(DWORD sessionID); |
|
12 static HANDLE OpenLinkedToken(HANDLE token); |
|
13 static BOOL DisablePrivileges(HANDLE token); |
|
14 static bool CanUserElevate(); |
|
15 |
|
16 private: |
|
17 static BOOL SetPrivilege(HANDLE token, LPCTSTR privs, BOOL enable); |
|
18 static BOOL DisableUnneededPrivileges(HANDLE token, |
|
19 LPCTSTR *unneededPrivs, size_t count); |
|
20 static LPCTSTR PrivsToDisable[]; |
|
21 }; |
|
22 |
|
23 #endif |