다음을 통해 공유


Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2021-03-01

Bicep 리소스 정의

ApplicationGatewayWebApplicationFirewallPolicies 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

리소스 형식

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.

resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-01' = {
  location: 'string'
  name: 'string'
  properties: {
    customRules: [
      {
        action: 'string'
        matchConditions: [
          {
            matchValues: [
              'string'
            ]
            matchVariables: [
              {
                selector: 'string'
                variableName: 'string'
              }
            ]
            negationConditon: bool
            operator: 'string'
            transforms: [
              'string'
            ]
          }
        ]
        name: 'string'
        priority: int
        ruleType: 'string'
      }
    ]
    managedRules: {
      exclusions: [
        {
          matchVariable: 'string'
          selector: 'string'
          selectorMatchOperator: 'string'
        }
      ]
      managedRuleSets: [
        {
          ruleGroupOverrides: [
            {
              ruleGroupName: 'string'
              rules: [
                {
                  ruleId: 'string'
                  state: 'string'
                }
              ]
            }
          ]
          ruleSetType: 'string'
          ruleSetVersion: 'string'
        }
      ]
    }
    policySettings: {
      fileUploadLimitInMb: int
      maxRequestBodySizeInKb: int
      mode: 'string'
      requestBodyCheck: bool
      state: 'string'
    }
  }
  tags: {
    {customized property}: 'string'
  }
}

속성 값

ManagedRuleGroupOverride

이름 묘사
ruleGroupName 재정의할 관리되는 규칙 그룹입니다. string(필수)
규칙 사용하지 않도록 설정할 규칙 목록입니다. 지정하지 않으면 그룹의 모든 규칙이 비활성화됩니다. ManagedRuleOverride[]

ManagedRuleOverride

이름 묘사
ruleId 관리되는 규칙의 식별자입니다. string(필수)
상태 관리되는 규칙의 상태입니다. 지정하지 않으면 기본값이 Disabled로 설정됩니다. '사용 안 함'

ManagedRulesDefinition

이름 묘사
제외 정책에 적용되는 제외입니다. OwaspCrsExclusionEntry[]
managedRuleSets 정책과 연결된 관리되는 규칙 집합입니다. ManagedRuleSet[] (필수)

ManagedRuleSet

이름 묘사
ruleGroupOverrides 규칙 집합에 적용할 규칙 그룹 재정의를 정의합니다. ManagedRuleGroupOverride[]
ruleSetType 사용할 규칙 집합 형식을 정의합니다. string(필수)
ruleSetVersion 사용할 규칙 집합의 버전을 정의합니다. string(필수)

MatchCondition

이름 묘사
matchValues 일치 값입니다. string[] (필수)
matchVariables 일치 변수 목록입니다. MatchVariable[] (필수)
negationConditon 이것이 부정 조건인지 여부입니다. bool
연산자 일치시킬 연산자입니다. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'그레이터탄'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex'(필수)
변환 변환 목록입니다. 다음 중 어느 것을 포함하는 문자열 배열:
'HtmlEntityDecode'
'소문자'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

이름 묘사
선택자 일치 변수의 선택기입니다. 문자열
variableName 일치 변수입니다. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri'(필수)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

이름 묘사
위치 리소스 위치입니다. 문자열
이름 리소스 이름 문자열

제약 조건:
최대 길이 = (필수)
속성 웹 애플리케이션 방화벽 정책의 속성입니다. webApplicationFirewallPolicyPropertiesFormat
태그 리소스 태그 태그 이름 및 값의 사전입니다. 템플릿 태그를 참조하세요.

OwaspCrsExclusionEntry

이름 묘사
matchVariable 제외할 변수입니다. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames'(필수)
선택자 matchVariable이 컬렉션인 경우 이 제외가 적용되는 컬렉션의 요소를 지정하는 데 사용되는 연산자입니다. string(필수)
selectorMatchOperator matchVariable이 컬렉션인 경우 선택기에서 작동하여 이 제외가 적용되는 컬렉션의 요소를 지정합니다. 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith'(필수)

PolicySettings

이름 묘사
fileUploadLimitInMb WAF의 경우 최대 파일 업로드 크기(Mb)입니다. int

제약 조건:
최소값 = 0
maxRequestBodySizeInKb WAF의 경우 최대 요청 본문 크기(Kb)입니다. int

제약 조건:
최소값 = 8
모드 정책의 모드입니다. '검색'
'방지'
requestBodyCheck WAF가 요청 본문을 확인할 수 있도록 허용할지 여부입니다. bool
상태 정책의 상태입니다. '사용 안 함'
'Enabled'

ResourceTags

이름 묘사

WebApplicationFirewallCustomRule

이름 묘사
행동 작업 유형입니다. '허용'
'Block'
'Log'(필수)
matchConditions 일치 조건 목록입니다. MatchCondition[] (필수)
이름 정책 내에서 고유한 리소스의 이름입니다. 이 이름은 리소스에 액세스하는 데 사용할 수 있습니다. 문자열

제약 조건:
최대 길이 =
우선권 규칙의 우선 순위입니다. 값이 낮은 규칙은 값이 더 높은 규칙보다 앞에 평가됩니다. int(필수)
ruleType 규칙 유형입니다. 'Invalid'
'MatchRule'(필수)

WebApplicationFirewallPolicyPropertiesFormat

이름 묘사
customRules 정책 내의 사용자 지정 규칙입니다. webApplicationFirewallCustomRule[]
managedRules managedRules 구조를 설명합니다. managedRulesDefinition (필수)
policySettings 정책에 대한 PolicySettings입니다. PolicySettings

빠른 시작 샘플

다음 빠른 시작 샘플은 이 리소스 유형을 배포합니다.

Bicep 파일 묘사
NAT 게이트웨이 및 Application Gateway 사용하여 AKS 클러스터 이 샘플에서는 아웃바운드 연결을 위한 NAT 게이트웨이와 인바운드 연결을 위한 Application Gateway를 사용하여 AKS 클러스터를 배포하는 방법을 보여 줍니다.
Application Gateway 수신 컨트롤러 사용하여 AKS 클러스터 이 샘플에서는 Application Gateway, Application Gateway 수신 컨트롤러, Azure Container Registry, Log Analytics 및 Key Vault를 사용하여 AKS 클러스터를 배포하는 방법을 보여 줍니다.
WAF 및 방화벽 정책 사용하여 Application Gateway 이 템플릿은 방화벽 정책과 함께 구성된 WAF를 사용하여 Application Gateway를 만듭니다.
Azure Application Gateway Azure WAF v2 만들기 이 템플릿은 백 엔드 풀에 두 개의 Windows Server 2016 서버가 있는 Azure Application Gateway에 Azure Web Application Firewall v2를 만듭니다.
Application Gateway 원본 사용하여 Front Door 표준/프리미엄 이 템플릿은 Front Door 표준/프리미엄 및 Application Gateway 인스턴스를 만들고 NSG 및 WAF 정책을 사용하여 트래픽이 Front Door 원본을 통과했는지 확인합니다.
컨테이너 인스턴스 및 Application Gateway 사용하여 Front Door 이 템플릿은 컨테이너 그룹 및 Application Gateway를 사용하여 Front Door 표준/프리미엄을 만듭니다.

ARM 템플릿 리소스 정의

ApplicationGatewayWebApplicationFirewallPolicies 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

리소스 형식

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.

{
  "type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
  "apiVersion": "2021-03-01",
  "name": "string",
  "location": "string",
  "properties": {
    "customRules": [
      {
        "action": "string",
        "matchConditions": [
          {
            "matchValues": [ "string" ],
            "matchVariables": [
              {
                "selector": "string",
                "variableName": "string"
              }
            ],
            "negationConditon": "bool",
            "operator": "string",
            "transforms": [ "string" ]
          }
        ],
        "name": "string",
        "priority": "int",
        "ruleType": "string"
      }
    ],
    "managedRules": {
      "exclusions": [
        {
          "matchVariable": "string",
          "selector": "string",
          "selectorMatchOperator": "string"
        }
      ],
      "managedRuleSets": [
        {
          "ruleGroupOverrides": [
            {
              "ruleGroupName": "string",
              "rules": [
                {
                  "ruleId": "string",
                  "state": "string"
                }
              ]
            }
          ],
          "ruleSetType": "string",
          "ruleSetVersion": "string"
        }
      ]
    },
    "policySettings": {
      "fileUploadLimitInMb": "int",
      "maxRequestBodySizeInKb": "int",
      "mode": "string",
      "requestBodyCheck": "bool",
      "state": "string"
    }
  },
  "tags": {
    "{customized property}": "string"
  }
}

속성 값

ManagedRuleGroupOverride

이름 묘사
ruleGroupName 재정의할 관리되는 규칙 그룹입니다. string(필수)
규칙 사용하지 않도록 설정할 규칙 목록입니다. 지정하지 않으면 그룹의 모든 규칙이 비활성화됩니다. ManagedRuleOverride[]

ManagedRuleOverride

이름 묘사
ruleId 관리되는 규칙의 식별자입니다. string(필수)
상태 관리되는 규칙의 상태입니다. 지정하지 않으면 기본값이 Disabled로 설정됩니다. '사용 안 함'

ManagedRulesDefinition

이름 묘사
제외 정책에 적용되는 제외입니다. OwaspCrsExclusionEntry[]
managedRuleSets 정책과 연결된 관리되는 규칙 집합입니다. ManagedRuleSet[] (필수)

ManagedRuleSet

이름 묘사
ruleGroupOverrides 규칙 집합에 적용할 규칙 그룹 재정의를 정의합니다. ManagedRuleGroupOverride[]
ruleSetType 사용할 규칙 집합 형식을 정의합니다. string(필수)
ruleSetVersion 사용할 규칙 집합의 버전을 정의합니다. string(필수)

MatchCondition

이름 묘사
matchValues 일치 값입니다. string[] (필수)
matchVariables 일치 변수 목록입니다. MatchVariable[] (필수)
negationConditon 이것이 부정 조건인지 여부입니다. bool
연산자 일치시킬 연산자입니다. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'그레이터탄'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex'(필수)
변환 변환 목록입니다. 다음 중 어느 것을 포함하는 문자열 배열:
'HtmlEntityDecode'
'소문자'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

이름 묘사
선택자 일치 변수의 선택기입니다. 문자열
variableName 일치 변수입니다. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri'(필수)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

이름 묘사
apiVersion api 버전 '2021-03-01'
위치 리소스 위치입니다. 문자열
이름 리소스 이름 문자열

제약 조건:
최대 길이 = (필수)
속성 웹 애플리케이션 방화벽 정책의 속성입니다. webApplicationFirewallPolicyPropertiesFormat
태그 리소스 태그 태그 이름 및 값의 사전입니다. 템플릿 태그를 참조하세요.
리소스 종류 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'

OwaspCrsExclusionEntry

이름 묘사
matchVariable 제외할 변수입니다. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames'(필수)
선택자 matchVariable이 컬렉션인 경우 이 제외가 적용되는 컬렉션의 요소를 지정하는 데 사용되는 연산자입니다. string(필수)
selectorMatchOperator matchVariable이 컬렉션인 경우 선택기에서 작동하여 이 제외가 적용되는 컬렉션의 요소를 지정합니다. 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith'(필수)

PolicySettings

이름 묘사
fileUploadLimitInMb WAF의 경우 최대 파일 업로드 크기(Mb)입니다. int

제약 조건:
최소값 = 0
maxRequestBodySizeInKb WAF의 경우 최대 요청 본문 크기(Kb)입니다. int

제약 조건:
최소값 = 8
모드 정책의 모드입니다. '검색'
'방지'
requestBodyCheck WAF가 요청 본문을 확인할 수 있도록 허용할지 여부입니다. bool
상태 정책의 상태입니다. '사용 안 함'
'Enabled'

ResourceTags

이름 묘사

WebApplicationFirewallCustomRule

이름 묘사
행동 작업 유형입니다. '허용'
'Block'
'Log'(필수)
matchConditions 일치 조건 목록입니다. MatchCondition[] (필수)
이름 정책 내에서 고유한 리소스의 이름입니다. 이 이름은 리소스에 액세스하는 데 사용할 수 있습니다. 문자열

제약 조건:
최대 길이 =
우선권 규칙의 우선 순위입니다. 값이 낮은 규칙은 값이 더 높은 규칙보다 앞에 평가됩니다. int(필수)
ruleType 규칙 유형입니다. 'Invalid'
'MatchRule'(필수)

WebApplicationFirewallPolicyPropertiesFormat

이름 묘사
customRules 정책 내의 사용자 지정 규칙입니다. webApplicationFirewallCustomRule[]
managedRules managedRules 구조를 설명합니다. managedRulesDefinition (필수)
policySettings 정책에 대한 PolicySettings입니다. PolicySettings

빠른 시작 템플릿

다음 빠른 시작 템플릿은 이 리소스 유형을 배포합니다.

템플렛 묘사
NAT 게이트웨이 및 Application Gateway 사용하여 AKS 클러스터

Azure
배포
이 샘플에서는 아웃바운드 연결을 위한 NAT 게이트웨이와 인바운드 연결을 위한 Application Gateway를 사용하여 AKS 클러스터를 배포하는 방법을 보여 줍니다.
Application Gateway 수신 컨트롤러 사용하여 AKS 클러스터

Azure
배포
이 샘플에서는 Application Gateway, Application Gateway 수신 컨트롤러, Azure Container Registry, Log Analytics 및 Key Vault를 사용하여 AKS 클러스터를 배포하는 방법을 보여 줍니다.
WAF 및 방화벽 정책 사용하여 Application Gateway

Azure
배포
이 템플릿은 방화벽 정책과 함께 구성된 WAF를 사용하여 Application Gateway를 만듭니다.
Azure Application Gateway Azure WAF v2 만들기

Azure 배포
이 템플릿은 백 엔드 풀에 두 개의 Windows Server 2016 서버가 있는 Azure Application Gateway에 Azure Web Application Firewall v2를 만듭니다.
Application Gateway 원본 사용하여 Front Door 표준/프리미엄

Azure
배포
이 템플릿은 Front Door 표준/프리미엄 및 Application Gateway 인스턴스를 만들고 NSG 및 WAF 정책을 사용하여 트래픽이 Front Door 원본을 통과했는지 확인합니다.
컨테이너 인스턴스 및 Application Gateway 사용하여 Front Door

Azure
배포
이 템플릿은 컨테이너 그룹 및 Application Gateway를 사용하여 Front Door 표준/프리미엄을 만듭니다.

Terraform(AzAPI 공급자) 리소스 정의

ApplicationGatewayWebApplicationFirewallPolicies 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

  • 리소스 그룹

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

리소스 형식

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-01"
  name = "string"
  location = "string"
  body = jsonencode({
    properties = {
      customRules = [
        {
          action = "string"
          matchConditions = [
            {
              matchValues = [
                "string"
              ]
              matchVariables = [
                {
                  selector = "string"
                  variableName = "string"
                }
              ]
              negationConditon = bool
              operator = "string"
              transforms = [
                "string"
              ]
            }
          ]
          name = "string"
          priority = int
          ruleType = "string"
        }
      ]
      managedRules = {
        exclusions = [
          {
            matchVariable = "string"
            selector = "string"
            selectorMatchOperator = "string"
          }
        ]
        managedRuleSets = [
          {
            ruleGroupOverrides = [
              {
                ruleGroupName = "string"
                rules = [
                  {
                    ruleId = "string"
                    state = "string"
                  }
                ]
              }
            ]
            ruleSetType = "string"
            ruleSetVersion = "string"
          }
        ]
      }
      policySettings = {
        fileUploadLimitInMb = int
        maxRequestBodySizeInKb = int
        mode = "string"
        requestBodyCheck = bool
        state = "string"
      }
    }
  })
  tags = {
    {customized property} = "string"
  }
}

속성 값

ManagedRuleGroupOverride

이름 묘사
ruleGroupName 재정의할 관리되는 규칙 그룹입니다. string(필수)
규칙 사용하지 않도록 설정할 규칙 목록입니다. 지정하지 않으면 그룹의 모든 규칙이 비활성화됩니다. ManagedRuleOverride[]

ManagedRuleOverride

이름 묘사
ruleId 관리되는 규칙의 식별자입니다. string(필수)
상태 관리되는 규칙의 상태입니다. 지정하지 않으면 기본값이 Disabled로 설정됩니다. '사용 안 함'

ManagedRulesDefinition

이름 묘사
제외 정책에 적용되는 제외입니다. OwaspCrsExclusionEntry[]
managedRuleSets 정책과 연결된 관리되는 규칙 집합입니다. ManagedRuleSet[] (필수)

ManagedRuleSet

이름 묘사
ruleGroupOverrides 규칙 집합에 적용할 규칙 그룹 재정의를 정의합니다. ManagedRuleGroupOverride[]
ruleSetType 사용할 규칙 집합 형식을 정의합니다. string(필수)
ruleSetVersion 사용할 규칙 집합의 버전을 정의합니다. string(필수)

MatchCondition

이름 묘사
matchValues 일치 값입니다. string[] (필수)
matchVariables 일치 변수 목록입니다. MatchVariable[] (필수)
negationConditon 이것이 부정 조건인지 여부입니다. bool
연산자 일치시킬 연산자입니다. 'BeginsWith'
'Contains'
'EndsWith'
'Equal'
'GeoMatch'
'그레이터탄'
'GreaterThanOrEqual'
'IPMatch'
'LessThan'
'LessThanOrEqual'
'Regex'(필수)
변환 변환 목록입니다. 다음 중 어느 것을 포함하는 문자열 배열:
'HtmlEntityDecode'
'소문자'
'RemoveNulls'
'Trim'
'UrlDecode'
'UrlEncode'

MatchVariable

이름 묘사
선택자 일치 변수의 선택기입니다. 문자열
variableName 일치 변수입니다. 'PostArgs'
'QueryString'
'RemoteAddr'
'RequestBody'
'RequestCookies'
'RequestHeaders'
'RequestMethod'
'RequestUri'(필수)

Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies

이름 묘사
위치 리소스 위치입니다. 문자열
이름 리소스 이름 문자열

제약 조건:
최대 길이 = (필수)
속성 웹 애플리케이션 방화벽 정책의 속성입니다. webApplicationFirewallPolicyPropertiesFormat
태그 리소스 태그 태그 이름 및 값의 사전입니다.
리소스 종류 "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-03-01"

OwaspCrsExclusionEntry

이름 묘사
matchVariable 제외할 변수입니다. 'RequestArgNames'
'RequestCookieNames'
'RequestHeaderNames'(필수)
선택자 matchVariable이 컬렉션인 경우 이 제외가 적용되는 컬렉션의 요소를 지정하는 데 사용되는 연산자입니다. string(필수)
selectorMatchOperator matchVariable이 컬렉션인 경우 선택기에서 작동하여 이 제외가 적용되는 컬렉션의 요소를 지정합니다. 'Contains'
'EndsWith'
'Equals'
'EqualsAny'
'StartsWith'(필수)

PolicySettings

이름 묘사
fileUploadLimitInMb WAF의 경우 최대 파일 업로드 크기(Mb)입니다. int

제약 조건:
최소값 = 0
maxRequestBodySizeInKb WAF의 경우 최대 요청 본문 크기(Kb)입니다. int

제약 조건:
최소값 = 8
모드 정책의 모드입니다. '검색'
'방지'
requestBodyCheck WAF가 요청 본문을 확인할 수 있도록 허용할지 여부입니다. bool
상태 정책의 상태입니다. '사용 안 함'
'Enabled'

ResourceTags

이름 묘사

WebApplicationFirewallCustomRule

이름 묘사
행동 작업 유형입니다. '허용'
'Block'
'Log'(필수)
matchConditions 일치 조건 목록입니다. MatchCondition[] (필수)
이름 정책 내에서 고유한 리소스의 이름입니다. 이 이름은 리소스에 액세스하는 데 사용할 수 있습니다. 문자열

제약 조건:
최대 길이 =
우선권 규칙의 우선 순위입니다. 값이 낮은 규칙은 값이 더 높은 규칙보다 앞에 평가됩니다. int(필수)
ruleType 규칙 유형입니다. 'Invalid'
'MatchRule'(필수)

WebApplicationFirewallPolicyPropertiesFormat

이름 묘사
customRules 정책 내의 사용자 지정 규칙입니다. webApplicationFirewallCustomRule[]
managedRules managedRules 구조를 설명합니다. managedRulesDefinition (필수)
policySettings 정책에 대한 PolicySettings입니다. PolicySettings