我知道如何通过以下命令为IIS网站设置此设置:
Set-WebConfigurationProperty -filter "/system.webServer/security/authentication/windowsAuthentication" -name enabled -value true -PSPath "IIS:\" -location $siteName
但是我想为该网站内的应用程序设置它。例如,我有一个名为“ MySite”的IIS网站,里面有两个应用程序。我想为一个启用Windows身份验证,而不为另一个启用。因此,在站点级别启用都会同时启用,这是我不想要的。
您不需要单独的-PSPath
和-Location
参数。您可以像这样组合它们:
-PSPath "IIS:\Sites\$SiteName\$AppName"
因此,实际的命令将如下所示:
Set-WebConfigurationProperty -Filter "/system.webServer/security/authentication/windowsAuthentication" -Name Enabled -Value True -PSPath "IIS:\Sites\$SiteName\$AppName"
请注意,您可能会遇到此错误:
Set-WebConfigurationProperty:在此路径上不能使用此配置部分。当节锁定在父级时,会发生这种情况。锁定默认情况下是(overrideModeDefault =“ Deny”),或者是由一个带有overlayMode =“ Deny”或旧版allowOverride =“ false”的位置标记显式设置的。
在ServerFault的Tomfanning提供了这里的解决方案。我在这里重复了他的步骤:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句