Protected operations
akamai_apr_protected_operations
Hello. Just a note to let you know the underlying API on which this data source is built is general release and has been vetted, but because this is a new feature for our Terraform provider, we've given it beta label.
This status just means we've paused for a bit to get your feedback to make sure this data source works like you need and expect.
Get a list of and details about your protected API operations.
data "akamai_apr_protected_operations" "my_protected_operations" {
config_id = 12345
security_policy_id = "abcd_123456"
operation_id = "12a3bc4d-5678-9ef0-g12h-3i4jklm5no67"
}
output "my_protected_operations" {
value = data.akamai_apr_protected_operations.my_protected_operations
}my_protected_operations = {
config_id = 12345
id = "12345:abcd_123456"
json = jsonencode(
{
metadata = {
configId = 12345
configVersion = 1
securityPolicyId = "abcd_123456"
}
operations = [
{
apiEndPointId = 408126
operationId = "12a3bc4d-5678-9ef0-g12h-3i4jklm5no67"
telemetryTypeStates = {
inline = {
ajaxSupportEnabled = false
disabledAction = "monitor"
enabled = false
}
nativeSdk = {
ajaxSupportEnabled = false
disabledAction = "monitor"
enabled = false
}
standard = {
ajaxSupportEnabled = false
disabledAction = "monitor"
enabled = true
}
}
traffic = {
inline = {
aggressive = {
action = "monitor"
}
cautious = {
action = "monitor"
}
overrideThresholds = false
strict = {
action = "monitor"
}
}
standard = {
aggressive = {
action = "deny"
}
cautious = {
action = "monitor"
}
overrideThresholds = false
strict = {
action = "monitor"
}
}
}
},
]
}
)
operation_id = null
security_policy_id = "abcd_123456"
}Arguments
Pass all required arguments to get information about your protected API operations. Provide an operation's ID to limit the return.
| Argument | Required | Description |
|---|---|---|
config_id | ✔️ | Your security configuration's ID. |
security_policy_id | ✔️ | Your security policy's ID. |
operation_id | An API operation's ID. |
Attributes
Returned to you are details about your protected operations.
Notes:
- There is an
idattribute returned. It is an ID for the run of the data source and is not needed downstream anywhere.- Due to the level of nesting, the information within the
jsonattribute has been pulled out and placed in a subtable.
[block:parameters]
{
"data": {
"h-0": "Attribute",
"h-1": "Description",
"0-0": "config_id",
"0-1": "Your security configuration's ID.",
"1-0": "security_policy_id",
"1-1": "Your security policy's ID.",
"2-0": "operation_id",
"2-1": "An API operation's ID.",
"3-0": "json",
"3-1": "Details about your protected operations. Contains:
metadata. Data about your security configuration. Contains:config_id. Your security configuration's ID.config_version. The security configuration's version.security_policy_id. Your security policy's ID.
operationsA list of your protected API operations. See <a href="#protected-operations-json">Protected operation JSON for the schema."
},
"cols": 2,
"rows": 4,
"align": [
null,
null
]
}
[/block]Protected operations JSONYour protected operations's details.
Parameter Description apiEndPointIdAn endpoint's ID. operationIdAn API operation's ID. protectedOperationLinkA GETendpoint to retrieve information about your protected operations.telemetryTypeStatesAn object that contains the operation's types of telemetry, their enablement statuses, and their actions and thresholds. These telemetry types are available: inline. Collects incoming inline telemetry traffic.nativeSdk. Collects incoming SDK telemetry traffic.standard. Collects incoming standard telemetry traffic.
ajaxSupportEnabled. Whether to use AJAX for challenge actions.enabled. Required. Whether to include inline telemetry.disabledAction. Conditionally required. Ifenabledisfalse, provide an action to take on unexpected traffic. Possible actions are:denymonitortarpitdelay
slownonecustom
trafficThe types of traffic to take action upon. These types of traffic are available: inline. Attaches user telemetry directly to the protected request without using a first-party cookie. If you set the threshold override to true, don't passthreshold.nativeSdkAndroid. Attaches telemetry traffic directly from a native Android mobile application. If you set the threshold override to true, don't passthreshold.nativeSdkIos. Attaches telemetry traffic directly from a native iOS mobile application. If you set the threshold override to true, don't passthreshold.standard. Uses first-party cookies to associate and transmit user behavior data. If you set the threshold override to true, don't passthreshold.
aggressive. Aggressive response settings object. Contains:threshold. The point at which to trigger the response action. Set to a default of90with an available range of2-100.action. The action to take once the threshold is triggered. Possible actions are:denymonitortarpitdelay
slownonecustom
overrideThresholds. Whether to override threshold scores. Used when you want to customize actions on an endpoint.
cautious. Cautious response settings object Contains:threshold. The point at which to trigger the response action with an available range of0-98.action. The action to take once the threshold is triggered. Possible actions are:denymonitortarpitdelay
slownonecustom
overrideThresholds. Whether to override threshold scores. Used when you want to customize actions on an endpoint.
strict. Strict response settings object. Contains:thresholdThe point at which to trigger the response action. Set to a default of50. Available range is1-99.action. The action to take once the threshold is triggered. Possible actions are:denymonitortarpitdelay
slownonecustom
overrideThresholds. Whether to override threshold scores. Used when you want to customize actions on an endpoint.
Updated 6 days ago
