Skip to content

Commit

Permalink
Align phases and actions with those provided by Rulesets API
Browse files Browse the repository at this point in the history
* Remove the `allow` action, since this does not exist.

* Add the `ddos_mitigation` action.

* Remove the `http_request_main` phase, since this does not exist.

* Remove the `http_response_headers_transform_managed` phase, since it
  is not exposed publicly. The Managed Transforms API can be used to
  configure managed transforms.

* Rename `RulesetPhaseRateLimit` and `RulesetPhaseSuperBotFightMode` to
  be consistent with the phase names.
  • Loading branch information
zakcutner committed Aug 9, 2023
1 parent fd8af62 commit bb3c7e9
Showing 1 changed file with 25 additions and 31 deletions.
56 changes: 25 additions & 31 deletions rulesets.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,35 +21,32 @@ const (
RulesetKindRoot RulesetKind = "root"
RulesetKindZone RulesetKind = "zone"

RulesetPhaseDDoSL4 RulesetPhase = "ddos_l4"
RulesetPhaseDDoSL7 RulesetPhase = "ddos_l7"
RulesetPhaseHTTPConfigSettings RulesetPhase = "http_config_settings"
RulesetPhaseHTTPCustomErrors RulesetPhase = "http_custom_errors"
RulesetPhaseHTTPLogCustomFields RulesetPhase = "http_log_custom_fields"
RulesetPhaseHTTPRequestCacheSettings RulesetPhase = "http_request_cache_settings"
RulesetPhaseHTTPRequestDynamicRedirect RulesetPhase = "http_request_dynamic_redirect" //nolint:gosec
RulesetPhaseHTTPRequestFirewallCustom RulesetPhase = "http_request_firewall_custom"
RulesetPhaseHTTPRequestFirewallManaged RulesetPhase = "http_request_firewall_managed"
RulesetPhaseHTTPRequestLateTransform RulesetPhase = "http_request_late_transform"
RulesetPhaseHTTPRequestLateTransformManaged RulesetPhase = "http_request_late_transform_managed"
RulesetPhaseHTTPRequestMain RulesetPhase = "http_request_main"
RulesetPhaseHTTPRequestOrigin RulesetPhase = "http_request_origin"
RulesetPhaseHTTPRequestRedirect RulesetPhase = "http_request_redirect"
RulesetPhaseHTTPRequestSanitize RulesetPhase = "http_request_sanitize"
RulesetPhaseHTTPRequestTransform RulesetPhase = "http_request_transform"
RulesetPhaseHTTPResponseCompression RulesetPhase = "http_response_compression"
RulesetPhaseHTTPResponseFirewallManaged RulesetPhase = "http_response_firewall_managed"
RulesetPhaseHTTPResponseHeadersTransform RulesetPhase = "http_response_headers_transform"
RulesetPhaseHTTPResponseHeadersTransformManaged RulesetPhase = "http_response_headers_transform_managed"
RulesetPhaseMagicTransit RulesetPhase = "magic_transit"
RulesetPhaseRateLimit RulesetPhase = "http_ratelimit"
RulesetPhaseSuperBotFightMode RulesetPhase = "http_request_sbfm"

RulesetRuleActionAllow RulesetRuleAction = "allow"
RulesetPhaseDDoSL4 RulesetPhase = "ddos_l4"
RulesetPhaseDDoSL7 RulesetPhase = "ddos_l7"
RulesetPhaseHTTPConfigSettings RulesetPhase = "http_config_settings"
RulesetPhaseHTTPCustomErrors RulesetPhase = "http_custom_errors"
RulesetPhaseHTTPLogCustomFields RulesetPhase = "http_log_custom_fields"
RulesetPhaseHTTPRatelimit RulesetPhase = "http_ratelimit"
RulesetPhaseHTTPRequestCacheSettings RulesetPhase = "http_request_cache_settings"
RulesetPhaseHTTPRequestDynamicRedirect RulesetPhase = "http_request_dynamic_redirect" //nolint:gosec
RulesetPhaseHTTPRequestFirewallCustom RulesetPhase = "http_request_firewall_custom"
RulesetPhaseHTTPRequestFirewallManaged RulesetPhase = "http_request_firewall_managed"
RulesetPhaseHTTPRequestLateTransform RulesetPhase = "http_request_late_transform"
RulesetPhaseHTTPRequestOrigin RulesetPhase = "http_request_origin"
RulesetPhaseHTTPRequestRedirect RulesetPhase = "http_request_redirect"
RulesetPhaseHTTPRequestSanitize RulesetPhase = "http_request_sanitize"
RulesetPhaseHTTPRequestSBFM RulesetPhase = "http_request_sbfm"
RulesetPhaseHTTPRequestTransform RulesetPhase = "http_request_transform"
RulesetPhaseHTTPResponseCompression RulesetPhase = "http_response_compression"
RulesetPhaseHTTPResponseFirewallManaged RulesetPhase = "http_response_firewall_managed"
RulesetPhaseHTTPResponseHeadersTransform RulesetPhase = "http_response_headers_transform"
RulesetPhaseMagicTransit RulesetPhase = "magic_transit"

RulesetRuleActionBlock RulesetRuleAction = "block"
RulesetRuleActionChallenge RulesetRuleAction = "challenge"
RulesetRuleActionCompressResponse RulesetRuleAction = "compress_response"
RulesetRuleActionDDoSDynamic RulesetRuleAction = "ddos_dynamic"
RulesetRuleActionDDoSMitigation RulesetRuleAction = "ddos_mitigation"
RulesetRuleActionExecute RulesetRuleAction = "execute"
RulesetRuleActionForceConnectionClose RulesetRuleAction = "force_connection_close"
RulesetRuleActionJSChallenge RulesetRuleAction = "js_challenge"
Expand Down Expand Up @@ -98,36 +95,33 @@ func RulesetPhaseValues() []string {
string(RulesetPhaseHTTPConfigSettings),
string(RulesetPhaseHTTPCustomErrors),
string(RulesetPhaseHTTPLogCustomFields),
string(RulesetPhaseHTTPRatelimit),
string(RulesetPhaseHTTPRequestCacheSettings),
string(RulesetPhaseHTTPRequestDynamicRedirect),
string(RulesetPhaseHTTPRequestFirewallCustom),
string(RulesetPhaseHTTPRequestFirewallManaged),
string(RulesetPhaseHTTPRequestLateTransform),
string(RulesetPhaseHTTPRequestLateTransformManaged),
string(RulesetPhaseHTTPRequestMain),
string(RulesetPhaseHTTPRequestOrigin),
string(RulesetPhaseHTTPRequestRedirect),
string(RulesetPhaseHTTPRequestSanitize),
string(RulesetPhaseHTTPRequestSBFM),
string(RulesetPhaseHTTPRequestTransform),
string(RulesetPhaseHTTPResponseCompression),
string(RulesetPhaseHTTPResponseFirewallManaged),
string(RulesetPhaseHTTPResponseHeadersTransform),
string(RulesetPhaseHTTPResponseHeadersTransformManaged),
string(RulesetPhaseMagicTransit),
string(RulesetPhaseRateLimit),
string(RulesetPhaseSuperBotFightMode),
}
}

// RulesetRuleActionValues exposes all the available `RulesetRuleAction` values
// as a slice of strings.
func RulesetRuleActionValues() []string {
return []string{
string(RulesetRuleActionAllow),
string(RulesetRuleActionBlock),
string(RulesetRuleActionChallenge),
string(RulesetRuleActionCompressResponse),
string(RulesetRuleActionDDoSDynamic),
string(RulesetRuleActionDDoSMitigation),
string(RulesetRuleActionExecute),
string(RulesetRuleActionForceConnectionClose),
string(RulesetRuleActionJSChallenge),
Expand Down

0 comments on commit bb3c7e9

Please sign in to comment.