Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/304.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我是否可以修改Win7环境以允许.Net程序始终以管理员身份运行?_C#_.net_Elevated Privileges - Fatal编程技术网

C# 我是否可以修改Win7环境以允许.Net程序始终以管理员身份运行?

C# 我是否可以修改Win7环境以允许.Net程序始终以管理员身份运行?,c#,.net,elevated-privileges,C#,.net,Elevated Privileges,我们即将推出数百台运行Windows7的新机器,操作系统通过WDS安装,因此目前我们可以进行更改,并将其系统准备到构建中 问题是我们几年前编写的.Net应用程序本身产生了一个修改过的命令shell。该shell运行的dataflex应用程序本身需要以提升的权限运行 我们不授予用户任何一般管理权限 是否有一种机制可以预先允许.Net应用程序以管理员身份运行,以便命令控件以管理员身份运行 我知道我可以在app.manifest中进行更改,以要求程序以管理员身份运行。我不知道我如何(作为管理员)配置机

我们即将推出数百台运行Windows7的新机器,操作系统通过WDS安装,因此目前我们可以进行更改,并将其系统准备到构建中

问题是我们几年前编写的.Net应用程序本身产生了一个修改过的命令shell。该shell运行的dataflex应用程序本身需要以提升的权限运行

我们不授予用户任何一般管理权限

是否有一种机制可以预先允许.Net应用程序以管理员身份运行,以便命令控件以管理员身份运行

我知道我可以在app.manifest中进行更改,以要求程序以管理员身份运行。我不知道我如何(作为管理员)配置机器以允许这种情况发生,而不给用户比我希望他们拥有的更多的权限或凭据

应用程序必须以管理员身份运行,还是只需要访问特定内容?如果它在启动时有一个虚假的“我是管理员”检查,您可能可以使用中的一个垫片对它撒谎,然后配置对它实际需要的东西的访问权限


如果它看起来会飞起来,那么你最好把更多的问题转到serverfault上。

罗杰的意思是,许多人认为,如果应用程序不能以普通用户的身份工作,他们必须授予它管理员权限。这在很多情况下是不正确的,如果不是大多数情况下。您必须找出它失败的具体权利,然后分配这些权利。这是更多的工作,但它避免了将一般管理员权限授予用户。

可能有一条前进的路线。这不是应用程序检查,而是dataflex部件,它使用的是老式的32位dos扩展器。我将再次询问serverfault。作为旁白:您是否验证了“老式32位DOS扩展器”在64位Windows上工作?如果没有,你将不得不计划在未来几年内解决这个问题……这是一个64位的Windows安装,是的,确实如此。(作为管理员)您不能将应用程序修改为始终以管理员身份运行。如果你能做到这一点,那么任何程序都可以给自己管理员特权,这意味着整个安全基础设施都被破坏了。作为管理员,您可能可以配置系统,使其允许特定程序行使某些提升的权限。是否希望最终用户以管理员身份运行某项操作而不以管理员身份运行?我同意其他一些观点,你需要改变你试图做的事情。你需要解决问题,而不是解决问题。如果你的用户确实需要管理员权限来完成他们的工作,那么就给他们。如果他们没有,那么您需要修复需要管理员权限的应用程序的问题。正如其他人所说,可能只是修改资源权限。Jim,我知道允许自己以管理员身份运行的程序将是一个荒谬的安全漏洞,但管理员授予权限以允许特定的软件以管理员身份运行并不是那么愚蠢。我在想caspol之类的东西。我可以通过使用提供的运行方式凭据设置一个没有时间表的计划任务,并为用户提供一个启动任务的快捷方式来实现这一点。但我不认为这些信条能在sysprep中保存下来。我只是意识到Charles编辑了这个问题,并重新命名了它,结果相当糟糕。我对“修改程序”这样做不感兴趣。显然这是不可能的。我感兴趣的是我能对系统做些什么来允许它。正如我所建议的,我需要在服务器故障上问这个问题。