You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PowerShell为IIS应用设置强制SSL?

正确设置IIS应用sslFlags的方法

直接调用Application对象的SetAttributeValue设置sslFlags会报错,因为该属性不属于Application对象,它属于应用对应的虚拟目录配置节点(system.webServer/security/access)。以下是两种可行的解决方法:

方法一:使用Set-WebConfiguration命令(推荐)

这是PowerShell管理IIS配置的标准方式,无需手动操作对象:

# 替换为实际的站点名称和应用路径
$siteName = "目标站点名称"
$appPath = "/目标应用路径"

# 设置sslFlags为Ssl,可选值包括None、Ssl、SslNegotiateCert、SslRequireCert、Ssl128
Set-WebConfiguration -Filter "/system.webServer/security/access" -Value "Ssl" -Location "$siteName$appPath"

方法二:通过虚拟目录对象操作

如果需要基于对象进行修改,需先获取应用对应的根虚拟目录再操作:

# 筛选目标站点和应用
$site = Get-IISSite | Where-Object Name -Match "目标站点名称"
$app = $site.Applications | Where-Object Path -Match "目标应用路径"
# 获取应用的根虚拟目录
$vdir = $app.VirtualDirectories | Where-Object Path -eq $app.Path

# 设置sslFlags属性并保存配置
$vdir.SetAttributeValue('sslFlags', 'Ssl')
$site.CommitChanges()

补充说明

  • 配置修改后,可执行Restart-IISSite -Name $siteName重启站点使设置生效。
  • sslFlags的取值需根据实际SSL需求选择,比如需要强制客户端证书则用SslRequireCert。

内容的提问来源于stack exchange,提问作者unlikely

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 14:05:23