Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Zyb250ZG9vcndlYmFwcGxpY2F0aW9uZmlyZXdhbGxwb2xpY2llcw==/2025-03-01.xml (338 lines of code) (raw):
<?xml version='1.0' encoding='utf-8'?>
<CodeGen plane="mgmt-plane">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/frontdoorwebapplicationfirewallpolicies" version="2025-03-01" swagger="mgmt-plane/frontdoor/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9mcm9udERvb3JXZWJBcHBsaWNhdGlvbkZpcmV3YWxsUG9saWNpZXM=/V/MjAyNS0wMy0wMQ=="/>
<commandGroup name="network front-door waf-policy">
<command name="list" version="2025-03-01">
<resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/frontdoorwebapplicationfirewallpolicies" version="2025-03-01" swagger="mgmt-plane/frontdoor/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9mcm9udERvb3JXZWJBcHBsaWNhdGlvbkZpcmV3YWxsUG9saWNpZXM=/V/MjAyNS0wMy0wMQ=="/>
<argGroup name="">
<arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/>
<arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/>
</argGroup>
<operation operationId="Policies_List">
<http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies">
<request method="get">
<path>
<param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True">
<format pattern="^[a-zA-Z0-9_\-\(\)\.]*[^\.]$" maxLength="80" minLength="1"/>
</param>
<param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/>
</path>
<query>
<const readOnly="True" const="True" type="string" name="api-version" required="True">
<default value=""2025-03-01""/>
</const>
</query>
</request>
<response statusCode="200">
<body>
<json var="$Instance">
<schema type="object">
<prop type="string" name="nextLink"/>
<prop readOnly="True" type="array<object>" name="value">
<item type="object">
<prop type="string" name="etag"/>
<prop readOnly="True" type="ResourceId" name="id">
<format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{}"/>
</prop>
<prop type="ResourceLocation" name="location"/>
<prop readOnly="True" type="string" name="name"/>
<prop type="object" name="properties" clientFlatten="True">
<prop type="object" name="customRules">
<prop type="array<object>" name="rules">
<item type="object">
<prop type="string" name="action" required="True">
<enum>
<item value=""Allow""/>
<item value=""AnomalyScoring""/>
<item value=""Block""/>
<item value=""CAPTCHA""/>
<item value=""JSChallenge""/>
<item value=""Log""/>
<item value=""Redirect""/>
</enum>
</prop>
<prop type="string" name="enabledState">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
<prop type="array<object>" name="groupBy">
<item type="object">
<prop type="string" name="variableName" required="True">
<enum>
<item value=""GeoLocation""/>
<item value=""None""/>
<item value=""SocketAddr""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="matchConditions" required="True">
<item type="object">
<prop type="array<string>" name="matchValue" required="True">
<item type="string"/>
</prop>
<prop type="string" name="matchVariable" required="True">
<enum>
<item value=""Cookies""/>
<item value=""PostArgs""/>
<item value=""QueryString""/>
<item value=""RemoteAddr""/>
<item value=""RequestBody""/>
<item value=""RequestHeader""/>
<item value=""RequestMethod""/>
<item value=""RequestUri""/>
<item value=""SocketAddr""/>
</enum>
</prop>
<prop type="boolean" name="negateCondition"/>
<prop type="string" name="operator" required="True">
<enum>
<item value=""Any""/>
<item value=""BeginsWith""/>
<item value=""Contains""/>
<item value=""EndsWith""/>
<item value=""Equal""/>
<item value=""GeoMatch""/>
<item value=""GreaterThan""/>
<item value=""GreaterThanOrEqual""/>
<item value=""IPMatch""/>
<item value=""LessThan""/>
<item value=""LessThanOrEqual""/>
<item value=""RegEx""/>
</enum>
</prop>
<prop type="string" name="selector"/>
<prop type="array<string>" name="transforms">
<item type="string">
<enum>
<item value=""Lowercase""/>
<item value=""RemoveNulls""/>
<item value=""Trim""/>
<item value=""Uppercase""/>
<item value=""UrlDecode""/>
<item value=""UrlEncode""/>
</enum>
</item>
</prop>
</item>
</prop>
<prop type="string" name="name">
<format maxLength="128"/>
</prop>
<prop type="integer" name="priority" required="True"/>
<prop type="integer" name="rateLimitDurationInMinutes">
<format maximum="5" minimum="0"/>
</prop>
<prop type="integer" name="rateLimitThreshold">
<format minimum="0"/>
</prop>
<prop type="string" name="ruleType" required="True">
<enum>
<item value=""MatchRule""/>
<item value=""RateLimitRule""/>
</enum>
</prop>
</item>
</prop>
</prop>
<prop readOnly="True" type="array<object>" name="frontendEndpointLinks">
<item readOnly="True" type="object">
<prop type="string" name="id"/>
</item>
</prop>
<prop type="object" name="managedRules">
<prop type="array<object>" name="managedRuleSets">
<item type="object">
<prop type="array<object>" name="exclusions">
<item type="object" cls="ManagedRuleExclusion_read">
<prop type="string" name="matchVariable" required="True">
<enum>
<item value=""QueryStringArgNames""/>
<item value=""RequestBodyJsonArgNames""/>
<item value=""RequestBodyPostArgNames""/>
<item value=""RequestCookieNames""/>
<item value=""RequestHeaderNames""/>
</enum>
</prop>
<prop type="string" name="selector" required="True"/>
<prop type="string" name="selectorMatchOperator" required="True">
<enum>
<item value=""Contains""/>
<item value=""EndsWith""/>
<item value=""Equals""/>
<item value=""EqualsAny""/>
<item value=""StartsWith""/>
</enum>
</prop>
</item>
</prop>
<prop type="array<object>" name="ruleGroupOverrides">
<item type="object">
<prop type="array<@ManagedRuleExclusion_read>" name="exclusions">
<item type="@ManagedRuleExclusion_read"/>
</prop>
<prop type="string" name="ruleGroupName" required="True"/>
<prop type="array<object>" name="rules">
<item type="object">
<prop type="string" name="action">
<enum>
<item value=""Allow""/>
<item value=""AnomalyScoring""/>
<item value=""Block""/>
<item value=""CAPTCHA""/>
<item value=""JSChallenge""/>
<item value=""Log""/>
<item value=""Redirect""/>
</enum>
</prop>
<prop type="string" name="enabledState">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
<prop type="array<@ManagedRuleExclusion_read>" name="exclusions">
<item type="@ManagedRuleExclusion_read"/>
</prop>
<prop type="string" name="ruleId" required="True"/>
</item>
</prop>
</item>
</prop>
<prop type="string" name="ruleSetAction">
<enum>
<item value=""Block""/>
<item value=""Log""/>
<item value=""Redirect""/>
</enum>
</prop>
<prop type="string" name="ruleSetType" required="True"/>
<prop type="string" name="ruleSetVersion" required="True"/>
</item>
</prop>
</prop>
<prop type="object" name="policySettings">
<prop type="integer32" name="captchaExpirationInMinutes">
<format maximum="1440" minimum="5"/>
</prop>
<prop type="string" name="customBlockResponseBody">
<format pattern="^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$"/>
</prop>
<prop type="integer" name="customBlockResponseStatusCode"/>
<prop type="string" name="enabledState">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
<prop type="integer32" name="javascriptChallengeExpirationInMinutes">
<format maximum="1440" minimum="5"/>
</prop>
<prop type="object" name="logScrubbing" clientFlatten="True">
<prop type="array<object>" name="scrubbingRules">
<item type="object">
<prop type="string" name="matchVariable" required="True">
<enum>
<item value=""QueryStringArgNames""/>
<item value=""RequestBodyJsonArgNames""/>
<item value=""RequestBodyPostArgNames""/>
<item value=""RequestCookieNames""/>
<item value=""RequestHeaderNames""/>
<item value=""RequestIPAddress""/>
<item value=""RequestUri""/>
</enum>
</prop>
<prop type="string" name="selector"/>
<prop type="string" name="selectorMatchOperator" required="True">
<enum>
<item value=""Equals""/>
<item value=""EqualsAny""/>
</enum>
</prop>
<prop type="string" name="state">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</item>
</prop>
<prop type="string" name="state">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
<prop type="string" name="mode">
<enum>
<item value=""Detection""/>
<item value=""Prevention""/>
</enum>
</prop>
<prop type="string" name="redirectUrl"/>
<prop type="string" name="requestBodyCheck">
<enum>
<item value=""Disabled""/>
<item value=""Enabled""/>
</enum>
</prop>
</prop>
<prop readOnly="True" type="string" name="provisioningState"/>
<prop readOnly="True" type="string" name="resourceState">
<enum>
<item value=""Creating""/>
<item value=""Deleting""/>
<item value=""Disabled""/>
<item value=""Disabling""/>
<item value=""Enabled""/>
<item value=""Enabling""/>
</enum>
</prop>
<prop readOnly="True" type="array<object>" name="routingRuleLinks">
<item readOnly="True" type="object">
<prop type="string" name="id"/>
</item>
</prop>
<prop readOnly="True" type="array<object>" name="securityPolicyLinks">
<item readOnly="True" type="object">
<prop type="string" name="id"/>
</item>
</prop>
</prop>
<prop type="object" name="sku">
<prop type="string" name="name">
<enum>
<item value=""Classic_AzureFrontDoor""/>
<item value=""Premium_AzureFrontDoor""/>
<item value=""Standard_AzureFrontDoor""/>
</enum>
</prop>
</prop>
<prop type="object" name="tags">
<additionalProp>
<item type="string"/>
</additionalProp>
</prop>
<prop readOnly="True" type="string" name="type"/>
</item>
</prop>
</schema>
</json>
</body>
</response>
<response isError="True">
<body>
<json>
<schema type="@ODataV4Format"/>
</json>
</body>
</response>
</http>
</operation>
<output type="array" ref="$Instance.value" clientFlatten="True" nextLink="$Instance.nextLink"/>
</command>
</commandGroup>
</CodeGen>