繁体   English   中英

Hot to set Require SSL on IIS application by PowerShell

[英]Hot to set Require SSL on IIS application by PowerShell

尝试这样的事情:

$site = Get-IISSite |? Name -Match <...>
$app = $site.Applications |? Path -Match <...>
$app.SetAttributeValue('sslFlags', 'Ssl')

事实是sslFlags仍然不存在,显然SetAttributeValue无法添加新属性,因为我收到错误消息。

Exception while calling "SetAttributeValue" with "2" arguments: "Index not valid. (Exception from HRESULT: 0x80070585)"   (translated)

执行此操作的正确方法是什么?

我建议改用 app.exe。 例如,我在“默认 Web 站点”下有一个 webapi(name:testapp),现在我想在 powershell 中将键“sslFlags”设置为“Ssl”:

sslFlags 位于以下部分:system.webserver/security/access 检查 Microsoft 文档

1:解锁部分

& "$env:SystemRoot\System32\.netsrv\appcmd.exe" 解锁配置 /section:system.webServer/security/access

2:修改

& "$env:SystemRoot\System32\.netsrv\appcmd.exe" set config "Default Web Site/testapp" /section:system.webServer/security/access /sslFlags:"Ssl" 请参阅微软文档

然后 web.config 改变了。

在此处输入图像描述

顺便说一下:我测试了以下命令在此处输入图像描述 没有出现错误,但在 webconfig 中看不到任何更改。

经过一些调查,我发现新的IISAdministration模块的 Powershell 方式应该是这样的:

$site = Get-IISSite |? Name -Match <...>
$service = $site.Applications |? Path -Match <...>
Get-IISConfigSection -Location $service -SectionPath "system.webServer/security/access" | Set-IISConfigAttributeValue -AttributeName sslFlags -AttributeValue Ssl

有人可以确认吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM