RequestFilteringSection 类
配置传入 URL 请求的扫描。
语法
class RequestFilteringSection : ConfigurationSectionWithCollection
方法
下表列出了 RequestFilteringSection
类公开的方法。
名称 | 说明 |
---|---|
添加 | (继承自 ConfigurationSectionWithCollection。) |
清除 | (从 ConfigurationSectionWithCollection 继承。) |
Get | (从 ConfigurationSectionWithCollection 继承。) |
GetAllowDefinition | (继承自 ConfigurationSection。) |
GetAllowLocation | (从 ConfigurationSection 继承。) |
删除 | (从 ConfigurationSectionWithCollection 继承。) |
RevertToParent | (从 ConfigurationSection 继承。) |
SetAllowDefinition | (从 ConfigurationSection 继承。) |
SetAllowLocation | (从 ConfigurationSection 继承。) |
属性
下表列出了 RequestFilteringSection
类公开的属性。
名称 | 描述 |
---|---|
AllowDoubleEscaping |
一个读/写 boolean 值。 如果 URL 中允许使用双转义字符,则为 true ,否则为 false 。 默认为 false 。 |
AllowHighBitCharacters |
一个读/写 boolean 值。 如果 URL 中允许使用非 ASCII 字符,则为 true ,否则为 false 。 默认为 true 。 |
DenyUrlSequences |
一个 UrlSequenceSettings 值包含可用于攻击 Web 服务器的 URL 序列,因此将被拒绝。 |
FileExtensions |
一个读/写 FileExtensionsSettings 值,指定可在请求中允许或拒绝的文件扩展名。 |
HiddenSegments |
一个 HiddenSegmentSettings 值,指定哪些段的内容不会提供给客户端。 注意:段是 URL 中两个斜杠之间的部分或 URL 中最后一个斜杠之后的部分。 例如,URL /segment1/segment2/segment3.asp 有三个段:segment1、segment2 和 segment3.asp。 注意:默认情况下会阻止以下段:bin、App_code、App_GlobalResources、App_LocalResources、App_WebReferences、App_Data 和 App_Browsers。 |
Location |
(继承自 ConfigurationSection 。)一个键属性。 |
Path |
(继承自 ConfigurationSection 。)一个键属性。 |
RequestLimits |
RequestLimitsElement 值,该值指定传入 HTTP 请求的大小限制。 |
SectionInformation |
(从 ConfigurationSection 继承。) |
Verbs |
一个读/写 VerbsSettings 值,指定要允许或拒绝的 HTTP 谓词。 注意:不支持 HTTP 谓词的通配符。 |
子类
此类不包含子类。
注解
此类将早期版本的 IIS 所使用的 URLScan 工具的功能集成到 IIS 7 中。
注意
要使 RequestFilteringSection
类中的功能正常工作,必须安装请求筛选模块 (Modrqflt.dll)。
示例
以下示例显示了 ApplicationHost.config 文件中请求筛选节的所有属性。
' Connect to the WMI WebAdministration namespace.
Set objWMIService = GetObject("winmgmts:root\WebAdministration")
' Get the request-filtering section.
Set oRequestFilteringSection = objWMIService.Get( _
"RequestFilteringSection.Path='MACHINE/WEBROOT/APPHOST',Location=''")
' Show the path.
WScript.Echo "[Request Filtering Path]"
WScript.Echo oRequestFilteringSection.Path_
WScript.Echo
' Show the AllowDoubleEscaping property as "True" or "False."
WScript.Echo "[AllowDoubleEscaping]"
WScript.Echo CStr(oRequestFilteringSection.AllowDoubleEscaping)
WScript.Echo
' Show the AllowHighBitCharacters property as "True" or "False."
WScript.Echo "[AllowHighBitCharacters]"
WScript.Echo CStr(oRequestFilteringSection.AllowHighBitCharacters)
WScript.Echo
' List the denied URL sequences.
WScript.Echo "[Denied Url Sequences]"
For Each oSequence In _
oRequestFilteringSection.DenyUrlSequences.DenyUrlSequences
WScript.Echo oSequence.Sequence
Next
WScript.Echo
' List the file extensions settings.
WScript.Echo "[File Extensions]"
' Show the AllowUnlisted property as "True" or "False."
WScript.Echo "Allow unlisted file extensions: " & _
oRequestFilteringSection.FileExtensions.AllowUnlisted
WScript.Echo
' List each file extension and show whether it is allowed.
For Each oFileExtension In _
oRequestFilteringSection.FileExtensions.FileExtensions
WScript.Echo "File extension: " & oFileExtension.FileExtension
WScript.Echo "File extension allowed: " & oFileExtension.Allowed
WScript.Echo
Next
WScript.Echo
' List the hidden segments.
WScript.Echo "[Hidden Segments]"
For Each oHiddenSegment In _
oRequestFilteringSection.HiddenSegments.HiddenSegments
WScript.Echo oHiddenSegment.Segment
Next
WScript.Echo
' Show the request limits settings.
WScript.Echo "[Request Limits]"
WScript.Echo "maxAllowedContentLength: " & _
oRequestFilteringSection.RequestLimits.maxAllowedContentLength
WScript.Echo "maxUrl: " & oRequestFilteringSection.RequestLimits.maxUrl
WScript.Echo "maxQueryString: " & oRequestFilteringSection.RequestLimits.maxQueryString
WScript.Echo
' Show the header limits settings.
WScript.Echo vbtab & "[Header Limits]"
For Each oHeaderLimit In _
oRequestFilteringSection.RequestLimits.HeaderLimits.HeaderLimits
WScript.Echo vbtab & "Header: " & oHeaderLimit.Header
WScript.Echo vbtab & "Header size limit: " & oHeaderLimit.SizeLimit
WScript.Echo
Next
' List the verbs settings.
WScript.Echo "[Verbs]"
WScript.Echo "Allow unlisted verbs: " & oRequestFilteringSection.Verbs.AllowUnlisted
WScript.Echo
' List each verb and show whether it is allowed.
For Each oVerb In oRequestFilteringSection.Verbs.Verbs
WScript.Echo "Verb: " & oVerb.Verb
WScript.Echo "Verb allowed: " & oVerb.Allowed
WScript.Echo
Next
继承层次结构
ConfigurationSectionWithCollection
RequestFilteringSection
要求
类型 | 描述 |
---|---|
客户端 | - Windows Vista 上的 IIS 7.0 - Windows 7 上的 IIS 7.5 - Windows 8 上的 IIS 8.0 - Windows 10 上的 IIS 10.0 |
服务器 | - Windows Server 2008 上的 IIS 7.0 - Windows Server 2008 R2 上的 IIS 7.5 - Windows Server 2012 上的 IIS 8.0 - Windows Server 2012 R2 上的 IIS 8.5 - Windows Server 2016 上的 IIS 10.0 |
产品 | - IIS 7.0、IIS 7.5、IIS 8.0、IIS 8.5、IIS 10.0 |
MOF 文件 | WebAdministration.mof |
另请参阅
ConfigurationSectionWithCollection 类
FileExtensionElement 类
FileExtensionsSettings 类
HeaderLimitsSettings 类
HiddenSegmentSettings 类
<requestFiltering>
RequestLimitsElement 类
UrlSequence 类
UrlSequenceSettings 类
VerbElement 类
VerbsSettings 类