我有一个通过web.config
配置的ASP.NET应用程序来使用这样的模拟:
<system.web>
<identity impersonate="true" />
<authentication mode="Windows" />
</system.web>
应用程序需要执行某些管理任务。如果我以用户administrator
登录到应用程序,但是在以userA
登录时无效(仅限管理系统资源访问失败),这样可以正常工作em> 对系统具有管理访问权限。
我怀疑这里发生了什么UAC
正在踩踏。虽然ASP.NET应用模拟了userA
,但是当涉及到执行需要提升的事情时,它会失败,而运行为{{1}很好,因为该用户开始提升(如果在Windows中以交互方式执行操作,则永远不会获得UAC提示)。
顺便说一句,我不需要网络级模拟,所以我认为我不应该administrator
?
答案 0 :(得分:0)
我们公司与内部应用程序和UAC混淆了两个多星期。我们采取了两种方法解决这个问题。
首先,我们创建了一个安全组和安全策略,创建了一个用户并将Web应用程序池分配给该用户。这解决了我们的一些问题。
如果我们没有解决所有问题,而且我们无法修复应用程序以使用我们可以提供的权限...我们关闭了该服务器上的UAC。这是迄今为止巨大的安全风险,有些地方不可接受。但是,我们可以获得我们需要完成的一些任务所需的管理员令牌。
我怀疑是否可以让应用程序池向桌面用户提供UAC身份验证框,因为提供了沙盒服务。如果适用,您可能需要参与系统管理员/ IT部门,并讨论不同方法的风险和好处。