7

我需要以特定身份运行 IISExpress。在阅读了这篇文章后如何以不同的身份运行 iisexpress 应用程序池后,我在我的 \Documents\IISExpress\config\applicationhost.config 文件中更改了 processModel 的用户名和密码属性。

我想验证我的 Web 应用程序中的更改。有没有办法验证?

最终,我所追求的是我的安全性使用 PrincipalPermission 属性可以正常工作。我相信此属性上的 Name 属性与运行 IISExpress 和我的应用程序的用户相匹配。

在此先感谢您的帮助。

4

2 回答 2

9

IISExpress 以当前用户身份运行,更改 ProcessModel 用户名/密码无济于事。以特定身份运行的唯一方法是使用“runas”启动 iisexpress.exe。

于 2013-11-12T15:20:25.510 回答
4

我可能来不及提供帮助,但是您是否尝试过将项目更改为使用本地 IIS 而不是 IIS Express 运行?

这是我的做法(你可以从 Visual Studio 开始,但我觉得这更直接):

  • 以管理员权限启动 IIS 管理器(重要的是您有权使用 localhost 进行操作)
  • 添加一个新的应用程序池,运行您的数据库所需的身份(可能是您的 Windows 帐户)
  • 在 iis 上创建一个新的应用程序
    • 将其指向您的项目文件夹
    • 将其分配给您刚刚创建的应用程序池
  • 在 Visual Studio 中打开项目的属性(在解决方案资源管理器中选择项目,按 Alt-Enter 或使用上下文菜单)。在 Web 部分中,选择本地 IIS 而不是 IIS Express。无需创建虚拟目录(您已经这样做了)。

现在您的应用程序可以打开数据库。作为额外的奖励,您的项目始终可以运行。无需从 Visual Studio 启动它。

于 2015-07-24T17:23:38.610 回答