通过cmd行安装时,ApplicationPool ProcessModel标识失败

时间:2011-08-09 07:13:46

标签: wcf service cmd

由于在许多服务器上安装,我有一个通过cmd行安装的WCF服务!

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

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

Ergo,错误与用户身份有关!当我将Identity更改为NetworkService时没有问题。我无法手动将身份设置为用户...

我的cmd行看起来像:

c:\ Windows \ System32 \ inetsrv \ appcmd add apppool / name:“calendarproviderservice”^     / autostart:“true”^     /managedRuntimeVersion:“v4.0”^     /processModel.idleTimeout:"24:00:00“^     / enable32BitAppOnWin64:“true”^     /processmodel.identitytype:"SpecificUser“^     /processModel.userName:"PlannerAdmin“

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

干杯,芬恩。

2 个答案:

答案 0 :(得分:1)

已经有一段时间了,但我终于解决了我的问题!不幸的是,我没有勾勒出主要问题中的漏洞场景,因为我认为它在上下文中没有重要性。但确实如此!

情况是我的服务器是部署的服务器,其基本配置包括IIS 7.5!这就是问题所在!

当您尝试将应用程序池标识设置为域帐户时,IIS必须保留您的用户名和密码的本地副本。它以加密格式存储在IIS applicationHost.config中。在加密中,IIS使用iisConfiguration和iisWasKey容器中的计算机专用密钥。当此applicationHost.config移动到其他服务器(在这种情况下是新硬件上的已部署服务器)时,由于新的计算机密钥,IIS无法再解密密码。

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

所以从这里学到的经验是:如果必须部署许多带有IIS的服务器,请创建一个没有IIS的基本映像,并在部署后编写服务器上的IIS脚本!!!

干杯,芬恩。

PS。多米尼克,对不起,我在介绍问题上并不是那么清楚!

答案 1 :(得分:0)

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