Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.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# StartInfo的其他权限_C#_Windows_Permissions_Process - Fatal编程技术网

C# StartInfo的其他权限

C# StartInfo的其他权限,c#,windows,permissions,process,C#,Windows,Permissions,Process,我有一个服务(通常作为NetworkService运行),它使用StartInfo检索进程信息。它很好用 但是客户端希望以受限用户身份运行服务。(合理要求) 根据StartInfo的说法,它只能由“完全信任”的用户使用。是否有其他方法可以从StartInfo获取大部分信息,而无需“完全信任”,或者配置受限制的用户以“完全信任”流程信息 基本上,任何与流程相关的内容都需要完全信任。 因此,如果没有完全信任,就无法获取有关流程的信息 使用分配完全信任听起来您混淆了两个正交的安全系统:Windows用

我有一个服务(通常作为NetworkService运行),它使用StartInfo检索进程信息。它很好用

但是客户端希望以受限用户身份运行服务。(合理要求)


根据StartInfo的说法,它只能由“完全信任”的用户使用。是否有其他方法可以从StartInfo获取大部分信息,而无需“完全信任”,或者配置受限制的用户以“完全信任”流程信息

基本上,任何与流程相关的内容都需要完全信任。
因此,如果没有完全信任,就无法获取有关流程的信息


使用分配完全信任

听起来您混淆了两个正交的安全系统:Windows用户安全和.NET代码访问安全(CAS)。虽然使用System.Diagnostics.Process类需要CAS完全信任,但它不需要管理员用户权限,对于非管理员/受限用户来说,运行完全信任(wrt CAS)应用程序是非常可行的

这就是说,操作系统还对非管理员用户可以对进程执行的操作施加了限制,特别是那些不在自己帐户下运行的进程。根据代码试图对流程执行的操作,在没有有效管理员权限的帐户下运行服务可能可行,也可能不可行