你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Microsoft.Network frontDoors/rulesEngines

Bicep 资源定义

可以使用目标操作部署 frontDoors/rulesEngines 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.Network/frontDoors/rulesEngines 资源,请将以下 Bicep 添加到模板。

resource symbolicname 'Microsoft.Network/frontDoors/rulesEngines@2021-06-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    rules: [
      {
        action: {
          requestHeaderActions: [
            {
              headerActionType: 'string'
              headerName: 'string'
              value: 'string'
            }
          ]
          responseHeaderActions: [
            {
              headerActionType: 'string'
              headerName: 'string'
              value: 'string'
            }
          ]
          routeConfigurationOverride: {
            @odata.type: 'string'
            // For remaining properties, see RouteConfiguration objects
          }
        }
        matchConditions: [
          {
            negateCondition: bool
            rulesEngineMatchValue: [
              'string'
            ]
            rulesEngineMatchVariable: 'string'
            rulesEngineOperator: 'string'
            selector: 'string'
            transforms: [
              'string'
            ]
          }
        ]
        matchProcessingBehavior: 'string'
        name: 'string'
        priority: int
      }
    ]
  }
}

RouteConfiguration 对象

设置 @odata.type 属性以指定对象的类型。

对于 #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration,请使用:

{
  @odata.type: '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
  backendPool: {
    id: 'string'
  }
  cacheConfiguration: {
    cacheDuration: 'string'
    dynamicCompression: 'string'
    queryParameters: 'string'
    queryParameterStripDirective: 'string'
  }
  customForwardingPath: 'string'
  forwardingProtocol: 'string'
}

对于 #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration,请使用:

{
  @odata.type: '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration'
  customFragment: 'string'
  customHost: 'string'
  customPath: 'string'
  customQueryString: 'string'
  redirectProtocol: 'string'
  redirectType: 'string'
}

属性值

CacheConfiguration

名字 描述 价值
cacheDuration 需要缓存内容的持续时间。 允许的格式采用 ISO 8601 格式(http://en.wikipedia.org/wiki/ISO_8601#Durations)。 HTTP 要求该值不超过一年 字符串
dynamicCompression 是否对缓存内容使用动态压缩 “Disabled”
“Enabled”
queryParameters 要包含或排除的查询参数(逗号分隔)。 字符串
queryParameterStripDirective 在形成缓存密钥时处理 URL 查询词。 “StripAll”
“StripAllExcept”
“StripNone”
“StripOnly”

ForwardingConfiguration

名字 描述 价值
@odata.type “#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration”(必需)
backendPool 对此规则路由到的 BackendPool 的引用。 SubResource
cacheConfiguration 与此规则关联的缓存配置。 CacheConfiguration
customForwardingPath 用于重写此规则匹配的资源路径的自定义路径。 留空以使用传入路径。 字符串
forwardingProtocol 将流量转发到后端时,此规则将使用协议。 “HttpOnly”
“HttpsOnly”
“MatchRequest”

HeaderAction

名字 描述 价值
headerActionType 要应用于标头的操作类型。 “Append”
“Delete”
“Overwrite”(必需)
headerName 此操作将应用到的标头的名称。 string (必需)
价值 要更新给定标头名称的值。 如果 actionType 为 Delete,则不使用此值。 字符串

Microsoft.Network/frontDoors/rulesEngines

名字 描述 价值
名字 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 1
模式 = ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ (必需)
父母 在 Bicep 中,可以为子资源指定父资源。 仅当子资源在父资源外部声明时,才需要添加此属性。

有关详细信息,请参阅 父资源外部的子资源
类型资源的符号名称:frontDoors
性能 规则引擎配置的属性。 RulesEngineProperties

RedirectConfiguration

名字 描述 价值
@odata.type “#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”(必需)
customFragment 要添加到重定向 URL 的片段。 片段是 #之后 URL 的一部分。 请勿包含 #。 字符串
customHost 要重定向的主机。 将传入主机保留为空,以将传入主机用作目标主机。 字符串
customPath 要重定向的完整路径。 路径不能为空,必须以 /开头。 将传入路径保留为空,以用作目标路径。 字符串
customQueryString 要放置在重定向 URL 中的查询字符串集。 设置此值将替换任何现有查询字符串;保留空以保留传入的查询字符串。 查询字符串必须采用 <键>=<值> 格式。 第一个? 并且会自动添加 &,因此不要在前面包含它们,但使用 &分隔多个查询字符串。 字符串
redirectProtocol 将流量重定向到的目标的协议 “HttpOnly”
“HttpsOnly”
“MatchRequest”
redirectType 重定向流量时规则将使用的重定向类型。 “Found”
“已移动”
“PermanentRedirect”
“TemporaryRedirect”

RouteConfiguration

名字 描述 价值
@odata.type 对于 forwardingConfiguration,请设置为“#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration”。 对于 redirectConfiguration类型,设置为“#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”。 '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
“#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”(必需)

RulesEngineAction

名字 描述 价值
requestHeaderActions 要从 AFD 到源的请求中应用的标头操作列表。 HeaderAction[]
responseHeaderActions 要从 AFD 响应应用到客户端的标头操作的列表。 HeaderAction[]
routeConfigurationOverride 重写路由配置。 RouteConfiguration

RulesEngineMatchCondition

名字 描述 价值
negateCondition 描述这是否为否定条件 bool
rulesEngineMatchValue 匹配要匹配的值。 运算符将应用于此处具有 OR 语义的每个值。 如果其中任何一个匹配变量与给定运算符匹配,则此匹配条件被视为匹配。 string[] (必需)
rulesEngineMatchVariable 匹配变量 “IsMobile”
“PostArgs”
“QueryString”
“RemoteAddr”
“RequestBody”
'RequestFilename'
'RequestFilenameExtension'
“RequestHeader”
“RequestMethod”
“RequestPath”
“RequestScheme”
“RequestUri”(必需)
rulesEngineOperator 描述要应用于匹配条件的运算符。 “Any”
“BeginsWith”
“Contains”
“EndsWith”
“Equal”
“GeoMatch”
“GreaterThan”
“GreaterThanOrEqual”
“IPMatch”
“LessThan”
“LessThanOrEqual”(必需)
选择器 要匹配的 RequestHeader 或 RequestBody 中的选择器的名称 字符串
变换 转换列表 包含任一项的字符串数组:
“小写”
“RemoveNulls”
“Trim”
“大写”
“UrlDecode”
“UrlEncode”

RulesEngineProperties

名字 描述 价值
规则 定义特定规则引擎配置的规则列表。 RulesEngineRule[]

RulesEngineRule

名字 描述 价值
行动 如果满足所有匹配条件,则对请求和响应执行的操作。 RulesEngineAction (必需)
matchConditions 必须满足的匹配条件列表,以便运行此规则的操作。 没有匹配条件意味着操作将始终运行。 RulesEngineMatchCondition[]
matchProcessingBehavior 如果此规则是匹配规则,则规则引擎应继续运行剩余规则或停止。 如果不存在,则默认为“继续”。 “Continue”
“Stop”
名字 要引用此特定规则的名称。 string (必需)
优先权 分配给此规则的优先级。 int (必需)

SubResource

名字 描述 价值
id 资源 ID。 字符串

ARM 模板资源定义

可以使用目标操作部署 frontDoors/rulesEngines 资源类型:

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.Network/frontDoors/rulesEngines 资源,请将以下 JSON 添加到模板。

{
  "type": "Microsoft.Network/frontDoors/rulesEngines",
  "apiVersion": "2021-06-01",
  "name": "string",
  "properties": {
    "rules": [
      {
        "action": {
          "requestHeaderActions": [
            {
              "headerActionType": "string",
              "headerName": "string",
              "value": "string"
            }
          ],
          "responseHeaderActions": [
            {
              "headerActionType": "string",
              "headerName": "string",
              "value": "string"
            }
          ],
          "routeConfigurationOverride": {
            "@odata.type": "string"
            // For remaining properties, see RouteConfiguration objects
          }
        },
        "matchConditions": [
          {
            "negateCondition": "bool",
            "rulesEngineMatchValue": [ "string" ],
            "rulesEngineMatchVariable": "string",
            "rulesEngineOperator": "string",
            "selector": "string",
            "transforms": [ "string" ]
          }
        ],
        "matchProcessingBehavior": "string",
        "name": "string",
        "priority": "int"
      }
    ]
  }
}

RouteConfiguration 对象

设置 @odata.type 属性以指定对象的类型。

对于 #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration,请使用:

{
  "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
  "backendPool": {
    "id": "string"
  },
  "cacheConfiguration": {
    "cacheDuration": "string",
    "dynamicCompression": "string",
    "queryParameters": "string",
    "queryParameterStripDirective": "string"
  },
  "customForwardingPath": "string",
  "forwardingProtocol": "string"
}

对于 #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration,请使用:

{
  "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration",
  "customFragment": "string",
  "customHost": "string",
  "customPath": "string",
  "customQueryString": "string",
  "redirectProtocol": "string",
  "redirectType": "string"
}

属性值

CacheConfiguration

名字 描述 价值
cacheDuration 需要缓存内容的持续时间。 允许的格式采用 ISO 8601 格式(http://en.wikipedia.org/wiki/ISO_8601#Durations)。 HTTP 要求该值不超过一年 字符串
dynamicCompression 是否对缓存内容使用动态压缩 “Disabled”
“Enabled”
queryParameters 要包含或排除的查询参数(逗号分隔)。 字符串
queryParameterStripDirective 在形成缓存密钥时处理 URL 查询词。 “StripAll”
“StripAllExcept”
“StripNone”
“StripOnly”

ForwardingConfiguration

名字 描述 价值
@odata.type “#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration”(必需)
backendPool 对此规则路由到的 BackendPool 的引用。 SubResource
cacheConfiguration 与此规则关联的缓存配置。 CacheConfiguration
customForwardingPath 用于重写此规则匹配的资源路径的自定义路径。 留空以使用传入路径。 字符串
forwardingProtocol 将流量转发到后端时,此规则将使用协议。 “HttpOnly”
“HttpsOnly”
“MatchRequest”

HeaderAction

名字 描述 价值
headerActionType 要应用于标头的操作类型。 “Append”
“Delete”
“Overwrite”(必需)
headerName 此操作将应用到的标头的名称。 string (必需)
价值 要更新给定标头名称的值。 如果 actionType 为 Delete,则不使用此值。 字符串

Microsoft.Network/frontDoors/rulesEngines

名字 描述 价值
apiVersion API 版本 '2021-06-01'
名字 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 1
模式 = ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ (必需)
性能 规则引擎配置的属性。 RulesEngineProperties
类型 资源类型 “Microsoft.Network/frontDoors/rulesEngines”

RedirectConfiguration

名字 描述 价值
@odata.type “#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”(必需)
customFragment 要添加到重定向 URL 的片段。 片段是 #之后 URL 的一部分。 请勿包含 #。 字符串
customHost 要重定向的主机。 将传入主机保留为空,以将传入主机用作目标主机。 字符串
customPath 要重定向的完整路径。 路径不能为空,必须以 /开头。 将传入路径保留为空,以用作目标路径。 字符串
customQueryString 要放置在重定向 URL 中的查询字符串集。 设置此值将替换任何现有查询字符串;保留空以保留传入的查询字符串。 查询字符串必须采用 <键>=<值> 格式。 第一个? 并且会自动添加 &,因此不要在前面包含它们,但使用 &分隔多个查询字符串。 字符串
redirectProtocol 将流量重定向到的目标的协议 “HttpOnly”
“HttpsOnly”
“MatchRequest”
redirectType 重定向流量时规则将使用的重定向类型。 “Found”
“已移动”
“PermanentRedirect”
“TemporaryRedirect”

RouteConfiguration

名字 描述 价值
@odata.type 对于 forwardingConfiguration,请设置为“#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration”。 对于 redirectConfiguration类型,设置为“#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”。 '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
“#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”(必需)

RulesEngineAction

名字 描述 价值
requestHeaderActions 要从 AFD 到源的请求中应用的标头操作列表。 HeaderAction[]
responseHeaderActions 要从 AFD 响应应用到客户端的标头操作的列表。 HeaderAction[]
routeConfigurationOverride 重写路由配置。 RouteConfiguration

RulesEngineMatchCondition

名字 描述 价值
negateCondition 描述这是否为否定条件 bool
rulesEngineMatchValue 匹配要匹配的值。 运算符将应用于此处具有 OR 语义的每个值。 如果其中任何一个匹配变量与给定运算符匹配,则此匹配条件被视为匹配。 string[] (必需)
rulesEngineMatchVariable 匹配变量 “IsMobile”
“PostArgs”
“QueryString”
“RemoteAddr”
“RequestBody”
'RequestFilename'
'RequestFilenameExtension'
“RequestHeader”
“RequestMethod”
“RequestPath”
“RequestScheme”
“RequestUri”(必需)
rulesEngineOperator 描述要应用于匹配条件的运算符。 “Any”
“BeginsWith”
“Contains”
“EndsWith”
“Equal”
“GeoMatch”
“GreaterThan”
“GreaterThanOrEqual”
“IPMatch”
“LessThan”
“LessThanOrEqual”(必需)
选择器 要匹配的 RequestHeader 或 RequestBody 中的选择器的名称 字符串
变换 转换列表 包含任一项的字符串数组:
“小写”
“RemoveNulls”
“Trim”
“大写”
“UrlDecode”
“UrlEncode”

RulesEngineProperties

名字 描述 价值
规则 定义特定规则引擎配置的规则列表。 RulesEngineRule[]

RulesEngineRule

名字 描述 价值
行动 如果满足所有匹配条件,则对请求和响应执行的操作。 RulesEngineAction (必需)
matchConditions 必须满足的匹配条件列表,以便运行此规则的操作。 没有匹配条件意味着操作将始终运行。 RulesEngineMatchCondition[]
matchProcessingBehavior 如果此规则是匹配规则,则规则引擎应继续运行剩余规则或停止。 如果不存在,则默认为“继续”。 “Continue”
“Stop”
名字 要引用此特定规则的名称。 string (必需)
优先权 分配给此规则的优先级。 int (必需)

SubResource

名字 描述 价值
id 资源 ID。 字符串

Terraform (AzAPI 提供程序)资源定义

可以使用目标操作部署 frontDoors/rulesEngines 资源类型:

  • 资源组

有关每个 API 版本中已更改属性的列表,请参阅 更改日志

资源格式

若要创建 Microsoft.Network/frontDoors/rulesEngines 资源,请将以下 Terraform 添加到模板。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/frontDoors/rulesEngines@2021-06-01"
  name = "string"
  body = jsonencode({
    properties = {
      rules = [
        {
          action = {
            requestHeaderActions = [
              {
                headerActionType = "string"
                headerName = "string"
                value = "string"
              }
            ]
            responseHeaderActions = [
              {
                headerActionType = "string"
                headerName = "string"
                value = "string"
              }
            ]
            routeConfigurationOverride = {
              @odata.type = "string"
              // For remaining properties, see RouteConfiguration objects
            }
          }
          matchConditions = [
            {
              negateCondition = bool
              rulesEngineMatchValue = [
                "string"
              ]
              rulesEngineMatchVariable = "string"
              rulesEngineOperator = "string"
              selector = "string"
              transforms = [
                "string"
              ]
            }
          ]
          matchProcessingBehavior = "string"
          name = "string"
          priority = int
        }
      ]
    }
  })
}

RouteConfiguration 对象

设置 @odata.type 属性以指定对象的类型。

对于 #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration,请使用:

{
  @odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration"
  backendPool = {
    id = "string"
  }
  cacheConfiguration = {
    cacheDuration = "string"
    dynamicCompression = "string"
    queryParameters = "string"
    queryParameterStripDirective = "string"
  }
  customForwardingPath = "string"
  forwardingProtocol = "string"
}

对于 #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration,请使用:

{
  @odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration"
  customFragment = "string"
  customHost = "string"
  customPath = "string"
  customQueryString = "string"
  redirectProtocol = "string"
  redirectType = "string"
}

属性值

CacheConfiguration

名字 描述 价值
cacheDuration 需要缓存内容的持续时间。 允许的格式采用 ISO 8601 格式(http://en.wikipedia.org/wiki/ISO_8601#Durations)。 HTTP 要求该值不超过一年 字符串
dynamicCompression 是否对缓存内容使用动态压缩 “Disabled”
“Enabled”
queryParameters 要包含或排除的查询参数(逗号分隔)。 字符串
queryParameterStripDirective 在形成缓存密钥时处理 URL 查询词。 “StripAll”
“StripAllExcept”
“StripNone”
“StripOnly”

ForwardingConfiguration

名字 描述 价值
@odata.type “#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration”(必需)
backendPool 对此规则路由到的 BackendPool 的引用。 SubResource
cacheConfiguration 与此规则关联的缓存配置。 CacheConfiguration
customForwardingPath 用于重写此规则匹配的资源路径的自定义路径。 留空以使用传入路径。 字符串
forwardingProtocol 将流量转发到后端时,此规则将使用协议。 “HttpOnly”
“HttpsOnly”
“MatchRequest”

HeaderAction

名字 描述 价值
headerActionType 要应用于标头的操作类型。 “Append”
“Delete”
“Overwrite”(必需)
headerName 此操作将应用到的标头的名称。 string (必需)
价值 要更新给定标头名称的值。 如果 actionType 为 Delete,则不使用此值。 字符串

Microsoft.Network/frontDoors/rulesEngines

名字 描述 价值
名字 资源名称 字符串

约束:
最小长度 = 1
最大长度 = 1
模式 = ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ (必需)
parent_id 此资源的父资源的 ID。 类型资源的 ID:frontDoors
性能 规则引擎配置的属性。 RulesEngineProperties
类型 资源类型 “Microsoft.Network/frontDoors/rulesEngines@2021-06-01”

RedirectConfiguration

名字 描述 价值
@odata.type “#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”(必需)
customFragment 要添加到重定向 URL 的片段。 片段是 #之后 URL 的一部分。 请勿包含 #。 字符串
customHost 要重定向的主机。 将传入主机保留为空,以将传入主机用作目标主机。 字符串
customPath 要重定向的完整路径。 路径不能为空,必须以 /开头。 将传入路径保留为空,以用作目标路径。 字符串
customQueryString 要放置在重定向 URL 中的查询字符串集。 设置此值将替换任何现有查询字符串;保留空以保留传入的查询字符串。 查询字符串必须采用 <键>=<值> 格式。 第一个? 并且会自动添加 &,因此不要在前面包含它们,但使用 &分隔多个查询字符串。 字符串
redirectProtocol 将流量重定向到的目标的协议 “HttpOnly”
“HttpsOnly”
“MatchRequest”
redirectType 重定向流量时规则将使用的重定向类型。 “Found”
“已移动”
“PermanentRedirect”
“TemporaryRedirect”

RouteConfiguration

名字 描述 价值
@odata.type 对于 forwardingConfiguration,请设置为“#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration”。 对于 redirectConfiguration类型,设置为“#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”。 '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
“#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration”(必需)

RulesEngineAction

名字 描述 价值
requestHeaderActions 要从 AFD 到源的请求中应用的标头操作列表。 HeaderAction[]
responseHeaderActions 要从 AFD 响应应用到客户端的标头操作的列表。 HeaderAction[]
routeConfigurationOverride 重写路由配置。 RouteConfiguration

RulesEngineMatchCondition

名字 描述 价值
negateCondition 描述这是否为否定条件 bool
rulesEngineMatchValue 匹配要匹配的值。 运算符将应用于此处具有 OR 语义的每个值。 如果其中任何一个匹配变量与给定运算符匹配,则此匹配条件被视为匹配。 string[] (必需)
rulesEngineMatchVariable 匹配变量 “IsMobile”
“PostArgs”
“QueryString”
“RemoteAddr”
“RequestBody”
'RequestFilename'
'RequestFilenameExtension'
“RequestHeader”
“RequestMethod”
“RequestPath”
“RequestScheme”
“RequestUri”(必需)
rulesEngineOperator 描述要应用于匹配条件的运算符。 “Any”
“BeginsWith”
“Contains”
“EndsWith”
“Equal”
“GeoMatch”
“GreaterThan”
“GreaterThanOrEqual”
“IPMatch”
“LessThan”
“LessThanOrEqual”(必需)
选择器 要匹配的 RequestHeader 或 RequestBody 中的选择器的名称 字符串
变换 转换列表 包含任一项的字符串数组:
“小写”
“RemoveNulls”
“Trim”
“大写”
“UrlDecode”
“UrlEncode”

RulesEngineProperties

名字 描述 价值
规则 定义特定规则引擎配置的规则列表。 RulesEngineRule[]

RulesEngineRule

名字 描述 价值
行动 如果满足所有匹配条件,则对请求和响应执行的操作。 RulesEngineAction (必需)
matchConditions 必须满足的匹配条件列表,以便运行此规则的操作。 没有匹配条件意味着操作将始终运行。 RulesEngineMatchCondition[]
matchProcessingBehavior 如果此规则是匹配规则,则规则引擎应继续运行剩余规则或停止。 如果不存在,则默认为“继续”。 “Continue”
“Stop”
名字 要引用此特定规则的名称。 string (必需)
优先权 分配给此规则的优先级。 int (必需)

SubResource

名字 描述 价值
id 资源 ID。 字符串