假设程序正在以提升的权限运行,并且需要查看System Volume Information文件夹的内容,并且默认情况下,只有NT Authority \ System可以执行此操作。解决方法是更改文件夹上的ACL,但我不想搞砸。我已经找到了两种方法:任务调度程序和psexec。它们太间接了,我甚至不需要描述第一个,第二个通过安装Windows服务,运行它,告诉它运行我想运行的任何东西,然后卸载服务。现在的问题是:是否有一个直接,简单的WinAPI函数来运行系统的东西?我不认为这样的API会绕过安全限制,因为管理员我有权安排任务或安装服务,所以必须有一个快捷方式。
更新:如果有一个实际的API专门告诉我系统卷信息的内容,那么它将是完美的,不需要作为系统运行。
答案 0 :(得分:3)
您无需更改文件夹的ACL。相反,您可以更改流程的ACL。它由一组Impersonate函数(例如ImpersonateLoggedOnUser)
完成