(跳至TLDR版本的底部。)
好的 - 所以我搜索了(真的!),我发现的所有其他UAC文章似乎都集中在启用,禁用,检测或隐藏UAC上。我的问题不是其中之一,所以这里是:
我的用户曾经拥有标准的双令牌设置,我在管理员组中,而UAC的同意用户界面只会询问我是否要继续。现在,我们需要使用单独的管理级帐户,并且必须对此新用户进行身份验证。我遇到的问题是以前,以管理员身份启动应用程序提升我的当前用户,现在如果我使用新管理用户的凭据,无论我运行什么 运行AS 该新用户。
例如,先前将CMD
提升并在命令提示符中键入whoami
,用于返回我的普通/当前用户,现在它返回新的管理用户。
这会产生严重的负面影响 - 因为这是新用户和管理级用户,如果使用此新用户创建了任何文件,我的普通用户无法写入或删除它们,除非我手动调整权限和所有权。如果我在新帐户下使用我的开发环境(例如,我需要调试服务或使用驱动程序)并重建某些内容,我最终会得到一些我无法操作的文件,除非我是管理员。同样,如果我在作为这个新帐户运行时添加文件 - 我的SCM工具以后将无法更新该文件,除非它也在这个新的管理帐户下运行。
此外,由于个人资料与此用户相关联,因此在完全不同的环境下运行(不同的 %USERNAME%
, %USERPROFILE%
,< strong> %LOCALAPPDATA%
等。)
如果仅为当前用户安装应用程序(例如“Just Me”选项)而不是为所有用户安装应用程序也将无法正常工作。如果在新帐户下运行,那么许可到我/普通用户帐户中的内容也无法正常运行,因为事情正在以新用户身份运行。
随着我的工作越多,这种变化的连锁反应越来越大。所以......
[TLDR] 有没有办法获得当前用户的临时提升,而没有该用户具有您在管理组中获得的正常双令牌设置?或者你是否坚持冒充行为?