【问题标题】:IIS Application Pool RecycleIIS 应用程序池回收
【发布时间】:2011-09-20 18:18:20
【问题描述】:

我必须使用 c# 以编程方式回收 IIS(7.5 版)应用程序池。当我尝试使用引发的“ServerManager”类 UnauthorizedAccessException 获取 ApplicationPoolCollection 时。 我想我必须使用模拟。但我不知道使用模拟。并且无论如何使用带有属性而不是 web.config 的模拟?

【问题讨论】:

    标签: iis-7.5 impersonation recycle


    【解决方案1】:

    要在 IIS 中执行任何管理操作,例如回收应用程序池、启动和停止站点、创建网站等,您需要以管理员身份运行。

    如果您想以编程方式模拟用户,则需要使用WindowsIdentity.Impersonate 方法。

    那里有相当不错的示例代码 sn-p 可以帮助您入门。

    当然,在将高特权用户的凭据存储在您的 web.config 文件(或硬编码)中时,所有常见的警告都适用于此。

    此外,如果您尝试使用托管的ServerManager API 以编程方式访问 IIS 的代码进行调试,请确保您通过执行“以管理员身份运行”来启动 Visual Studio。即使您自己的 Windows 帐户是管理员组的成员,您也需要这样做。

    【讨论】:

      猜你喜欢
      • 2011-03-10
      • 1970-01-01
      • 1970-01-01
      • 2019-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-10
      • 2013-10-02
      相关资源
      最近更新 更多