【问题标题】:c# impersonation problemc#冒充问题
【发布时间】:2011-09-24 22:59:48
【问题描述】:

我有一个运行批处理文件的方法。这一直有效,直到我实现了 IIS7 集成管道身份验证,限制了对托管在我的应用程序中的任何静态文件的访问。

我后来发现添加此更改后,该进程会尝试通过 NETWORK SERVICE 帐户而不是我的 web.config 中的模拟令牌来执行。

有什么理由或者我可以强制该方法使用模拟用户吗?

编辑

当然,现在我已经实现了集成管道,应用程序将批处理文件视为静态文件,并试图通过设置为应用程序池身份的匿名用户帐户访问它,而该用户帐户又使用 NETWORK SERVICE 帐户.

这些文件位于硬盘驱动器上的单独类库目录中,而不是通过应用程序托管。我试图通过将它们添加到我的应用程序中的文件夹来纠正这个问题,希望现在集成的管道会看到用户已通过身份验证并允许访问。情况并非如此,批处理文件仍然使用匿名身份验证帐户执行。 :(

谢谢!

【问题讨论】:

    标签: c# process impersonation


    【解决方案1】:

    如果有人来了,我建议你去这个网站

    http://blogs.msdn.com/b/alejacma/archive/2007/12/20/how-to-call-createprocesswithlogonw-createprocessasuser-in-net.aspx

    我发现 createprocessasuser 方法很有效。但是现在我正在努力使用管道从所述方法中获取标准输出。我正在使用这篇文章来帮助解决这个问题,

    How to get standard output from CreateProcessWithLogonW?

    希望这会有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-23
      • 2021-08-15
      • 1970-01-01
      • 1970-01-01
      • 2021-05-30
      • 1970-01-01
      • 1970-01-01
      • 2017-06-08
      相关资源
      最近更新 更多