Set-WebConfigurationProperty失败

时间:2011-10-06 03:16:16

标签: wcf iis powershell

我正在尝试使用powershell在IIS中的某个站点上设置windowsauth,这部分脚本到目前为止已在所有环境中运行,现在已经失败,我无法弄清楚原因。

Set-WebConfigurationproperty system.webServer/security/authentication/anonymousAuthentication -name enabled -value false -PSPath "IIS:\" -location $siteName
Set-WebConfigurationproperty system.webServer/security/authentication/windowsAuthentication -name enabled -value true -PSPath "IIS:\" -location $siteName

任何人都知道为什么这个脚本会失败?

我得到了“配置部分'system.serviceModel'无法读取,因为它缺少部分声明”

我可以手动启用Windows身份验证,网站也可以正常旋转。

干杯

2 个答案:

答案 0 :(得分:2)

事实证明问题是没有安装.Net 3.5。

由于powershell在没有安装3.5的情况下在.Net2 CLR下运行,因此不知道web.config中有什么system.serviceModel。

安装3.5后,脚本运行正常

答案 1 :(得分:1)

1)验证是否已安装.NET framework 3.0(或更高版本)。

2)以管理员身份执行以下命令:

“%WINDIR%\ Microsoft.Net \ Framework \ v3.0 \ Windows Communication Foundation \ ServiceModelReg.exe”-i

希望可以提供帮助