Iis

通過 PowerShell 查看 IIS Web 配置:HTTP 動詞

  • November 25, 2020

我在某些伺服器上配置 IIS 以將拒絕 HTTP 動詞添加到請求過濾部分。這是使用以下方法完成的:

Add-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST' -Filter 'system.webServer/security/requestFiltering' -Value @{VERB="OPTIONS";allowed="False"} -Name Verbs -AtIndex 0

…但是,我希望能夠在配置後確認它的存在。下面顯示了一些屬性,但不是實際的 HTTP 動詞列表:

Get-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter 'system.webServer/security/requestFiltering' -Name Verbs

從那以後,我發現以下命令確實顯示了“動詞”的標題,但無論 IIS 管理控制台中是否存在“選項”,它都是空的:

Get-WebConfiguration system.webServer/security/RequestFiltering/verbs -Recurse | Select-Object Verbs

我需要添加什麼來列出出現的動詞?

嘗試:

Get-WebConfiguration -pspath 'MACHINE/WEBROOT/APPHOST' -filter 'system.webServer/security/requestFiltering/verbs/add' | ft verb,allowed

使用 XML 節點的完整 Xpath。

有時它有助於查看applicationhost.config文件以確定數據的確切儲存位置。更改 UI 中的某些內容後,您可以使用 Diff 工具查看差異。

要刪除特定動詞,請使用:

Remove-WebConfigurationProperty  -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.webServer/security/requestFiltering/verbs" -name "." -AtElement @{verb='OPTIONS'}

引用自:https://serverfault.com/questions/1043773