Asp.net Powershell:更新IIS web.config
需要通过添加SSL更新IIS web.config以保护Cookie Config当前包含以下代码段Asp.net Powershell:更新IIS web.config,asp.net,powershell,iis,ssl,cookies,Asp.net,Powershell,Iis,Ssl,Cookies,需要通过添加SSL更新IIS web.config以保护Cookie Config当前包含以下代码段 <configuration> <system.web> <authentication mode="Forms"> <forms loginUrl="~/Account/LogOn" timeout="2880" /> </authentication> </sys
<configuration>
<system.web>
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
</system.web>
</configuration>
但似乎无法获得用于此目的的正确格式。对于requireSSL:
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site' -filter "system.web/authentication/forms" -name "requireSSL" -value "True"
对于httpOnlyCookies使用:
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site' -filter "system.web/httpCookies" -name "httpOnlyCookies" -value "True"
Add-WebConfigurationProperty //system.web 'MACHINE/WEBROOT/APPHOST/Default Web Site' -Name httpCookies -Value "True"
要添加HttpOnlyBookies,请使用:
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST/Default Web Site' -filter "system.web/httpCookies" -name "httpOnlyCookies" -value "True"
Add-WebConfigurationProperty //system.web 'MACHINE/WEBROOT/APPHOST/Default Web Site' -Name httpCookies -Value "True"
您必须将
默认网站
替换为您的网站名称。您链接的问题的两个答案都可以直接修改XML。不建议这样做,因为没有架构验证,更改XML可能会破坏网站。@Peter Hahndorf这两个更改都已成功测试,建议您这样做。如果不以这种方式进行更改,对于一个大型农场,您会提出什么其他建议?FredrickCampbell-我不是说它们不起作用,如果您非常小心地直接修改XML也可以起作用,但是如果您错报了属性的名称,您的脚本工作得非常好,但是站点将被破坏。有一个用于更改IIS配置的COM API。WMI、托管代码、PowerShell和appcmd.exe中都有它的包装器。哦,我说的是劳埃德链接,不是你的问题。我注意到我忘了带钥匙@lloyd@Peter-Hahndorf感谢您的反馈,尝试您的解决方案。你的解决方案很有效+1。啊,这就是问题所在。谢谢
Add-WebConfigurationProperty //system.web 'MACHINE/WEBROOT/APPHOST/Default Web Site' -Name httpCookies -Value "True"