4
假设网络进程P
在windows帐号A1
下运行。我假设线程(在P
中运行)是否在其他身份下运行(通过Thread.CurrentPrincipal.Identity
获得),而不是A1
,它在访问系统资源(如文件等)时仍具有与A1
相同的权限?线程标识
谢谢
假设网络进程P
在windows帐号A1
下运行。我假设线程(在P
中运行)是否在其他身份下运行(通过Thread.CurrentPrincipal.Identity
获得),而不是A1
,它在访问系统资源(如文件等)时仍具有与A1
相同的权限?线程标识
谢谢
我不希望有一个不同的身份,以“继承”从进程标识权限的线程。
只是为了确保我运行了一个模拟测试。使用这里的示例WindowsIdentity.Impersonate我在不同的线程上运行以下代码。
WindowsIdentity newId = new WindowsIdentity(safeTokenHandle.DangerousGetHandle());
Thread.CurrentPrincipal = new WindowsPrincipal(newId);
string foo = System.IO.File.ReadAllText (@"test.txt");
Console.WriteLine(foo);
即使进程的ID有读取权限的test.txt它,如果NEWID不会失败。
谢谢你的帮助 – user437291 2011-01-07 13:18:59
线程不会在对方内运行! – 2011-01-05 21:10:16
我并不是暗示线程正在另一个线程中运行。我说线程是在一个进程内运行的(或者更准确的说...线程在进程P托管的应用程序域内运行) – user437291 2011-01-05 21:17:38