Penalty box conditions

akamai_appsec_penalty_box_conditions

Create, update, or delete the conditions that trigger penalty box settings for a given security policy. To delete your settings, run terraform destroy.

resource "akamai_appsec_penalty_box_conditions" "my_conditions" {
  config_id = 12345
  security_policy_id = abcd_123456
  penalty_box_conditions = file("$path.root/conditions.json")
}

Arguments

Argument Required Description
config_id A security configuration ID.
security_policy_id A security policy ID.
penalty_box_conditions A pointer to a JSON file with your penalty box conditions. See Conditions JSON for available options.

Conditions JSON

Parameter Description
conditionOperator Required. The logic to apply to a set of penalty box conditions. Value is one of:
  • AND
  • OR
conditions Required. An array of objects containing your penalty box's trigger conditions.
Object Match condition type Description
caseSensitive uriQueryMatch When set to true, triggers condition based on the case-sensitivity of the provided query parameter value.

clientLists clientListMatch An array of client lists that trigger the condition.
extensions extensionMatch An array of file extension types that trigger the condition.
filenames filenameMatch An array of file names that trigger the condition.
header requestHeaderMatch The HTTP header that triggers the condition.
hosts hostMatch An array of hostnames that trigger the condition.
ips ipMatch An array of IPs that trigger the condition.
methods requestMethodMatch The HTTP methods that trigger the condition. Possible values are:
  • GET
  • POST
  • PUT
  • DELETE
  • OPTIONS
  • TRACE
  • CONNECT
  • PATCH
name uriQueryMatch The query parameter that triggers the condition.
nameCase uriQueryMatch When set to true, triggers condition based on the case-sensitivity of the provided query parameter name.
paths pathMatch An array of the paths that trigger the condition.
positiveMatch All Required. When set to true, the trigger is a match. Setting this to false triggers on the lack of match.
type All Required. The condition type to match on. Possible values are:
  • clientListMatch
  • extensionMatch
  • filenameMatch
  • hostMatch
  • ipMatch
  • pathMatch
  • requestHeaderMatch
  • requestMethodMatch
  • uriQueryMatch
useHeaders ipMatch
clientListMatch
When set to true, it includes the X-Forwarded-For header.
value uriQueryMatch
requestHeaderMatch
Respectively, the query parameter or headervalue.
valueCase requestHeaderMatch When set to true, triggers condition based on the case-sensitivity of the provided header value.
valueWildcard requestHeaderMatch When set to true, sets the provided header value as a wildcard.
wildcard uriQueryMatch When set to true, sets the provided query parameter value as a wildcard.

Attributes

There is no standard output for this resource, but setting an output method returns these attributes.

AttributeDescription
config_idYour security configuration's ID.
idA concatenation of your security configuration and policy IDs.
jsonA JSON encoded representation of your condition details.
output_textA table representation of your condition details.
security_policy_idYour security policy's ID.
output_textA tabular report listing the name and ID of your endpoints.