2011-08-09 29 views
1

我有一个WCF服务,我通过cmd行安装,由于在许多服务器上安装!当通过cmd行安装时,ApplicationPool ProcessModel身份失败

在安装应用程序池并对其进行配置时,我在流程模型标识上设置了一个自定义帐户,该帐户只是具有本地管理员权限的帐户!

但是,当我尝试浏览服务只是为了看到前台服务页面时,我得到一个服务不可用消息,其中包含http错误503,这是服务器错误,该错误又来自事件ID 5021,服务的应用程序池由于用户名/密码不正确而无效,或者用户可能没有批量登录权限。

错误,错误与用户身份有关!当我将Identity更改为NetworkService时,没有任何问题。我不能手动设置标识用户...

我的CMD线是这样的:

C:\ WINDOWS \ SYSTEM32 \ INETSRV \ APPCMD添加应用程序池/名称: “calendarproviderservice”^ /自动启动: “真”^ /managedRuntimeVersion:"v4.0"^ /processModel.idleTimeout:"24:00:00"^ /enable32BitAppOnWin64: “真正的”^ /processmodel.identitytype:"SpecificUser”^ /中processModel。用户名:“PlannerAdmin”

任何人都有线索......?

Cheers,Finn。

回答

0

您是否将用户分配给本地IIS_USRS组?

+0

是的,我有...! –

+0

您是否检查过该帐户是否因意外而未被禁用?此外,您不提供密码与您的命令,你发布之前删除它? – Dominik

+0

不,没错,我没有在那里提供密码!我找不到提供它的方法!该帐户未被禁用....! –

1

已经有一段时间了,但我终于解决了我的问题!不幸的是,我并没有在主要问题中勾画漏洞情节,因为我认为它并不是在上下文中进行的。但它确实!

这种情况是,我的服务器是一个基本配置包括IIS 7.5的部署服务器!这是问题!

当您尝试将应用程序池标识设置为域帐户时,IIS必须保留您的用户名和密码的本地副本。这以加密格式存储在IIS applicationHost.config中。在加密中,IIS使用iisConfiguration和iisWasKey容器中的机器特定键。当这个applicationHost.config被移动到另一个服务器(在这个例子中是在新硬件上部署的服务器)时,由于新的机器密钥,IIS不能再解密密码。

一个可以导出配置密钥,但我已经删除了我制作的映像的基本服务器!

因此,这里学到的教训是:如果必须在IIS上部署许多服务器,请在没有IIS的情况下创建基础映像,并在部署后在服务器上编写IIS脚本!

Cheers,Finn。

PS。多米尼克,对不起,我不清楚介绍问题!