0

所以 - 经过大量研究,似乎 < identity impersonate=true > 仅在 Application_Start 事件触发后才有效。

有谁知道这个问题的任何解决方法?我有一个应用程序需要在应用程序首次启动时创建数据库。运行 IIS 网站的用户具有适当的权限,可以以 APP_POOL 用户特别没有的方式进行操作。

我目前的 HACK 解决方案是放(伪代码)

static bool AppInitialized = false;
void Session_Start() {
   if (!AppInitialized) {
     AppInitialized=true;
     InitializeApp();
   }
}

impersonate=true 将在特定会话开始时“生效” - 所以这很有效,但看起来很愚蠢,因为我基本上是在重新创建 Application_Start 事件的行为。似乎必须有一个更优雅的解决方案来解决这个问题——不是吗?

4

1 回答 1

0

这很奇怪——我的 web.config 文件中有这个条目:

<identity impersonate="true" password="blarhg" userName="thisuser"/>

当我检查 Application_Start() 事件的身份时,它给了我“thisuser”。

这不正确吗?

于 2012-07-11T15:14:38.837 回答