A company uses Amazon GuardDuty and wants to suppress low-severity findings that are known false positives. What is the recommended approach?
Trap 1: Configure a CloudWatch Events rule to ignore the findings
CloudWatch Events (now Amazon EventBridge) can route GuardDuty findings to downstream targets like Lambda functions or SNS topics, but an event rule merely reacts to findings; it does not modify GuardDuty's internal state or remove them from the console. The finding remains active and visible in GuardDuty, whether or not the rule chooses to act on it, because the rule is a consumer of the finding stream, not a control on the detector. Thus, configuring a rule to 'ignore' findings has no effect on the GuardDuty console listing.
Trap 2: Manually delete the findings from the GuardDuty console
GuardDuty findings are immutable records of security-relevant activity; the service provides no delete operation in either the console or the API. You can archive findings, which moves them out of the active list, but archiving does not delete the finding and does not prevent the same finding type from recurring. Manual deletion is simply not possible, so the only effective suppression mechanism is a filter with conditions that exclude the false-positive pattern.
Trap 3: Disable the GuardDuty detector for the affected accounts
Disabling the GuardDuty detector is a region-level switch that stops all threat detection and halts generation of every finding type for that account, not just the low-severity item you want to suppress. This also suspends access to the findings list (or stops updates to existing findings) and disables downstream integrations such as EventBridge and Security Hub, so real high-severity threats would go unnoticed. Suppressing a single false positive should never require giving up all visibility into that account, which is why filters are the correct approach.
- A
Configure a CloudWatch Events rule to ignore the findings
Why it fails: CloudWatch Events (now Amazon EventBridge) can route GuardDuty findings to downstream targets like Lambda functions or SNS topics, but an event rule merely reacts to findings; it does not modify GuardDuty's internal state or remove them from the console. The finding remains active and visible in GuardDuty, whether or not the rule chooses to act on it, because the rule is a consumer of the finding stream, not a control on the detector. Thus, configuring a rule to 'ignore' findings has no effect on the GuardDuty console listing.
- B
Manually delete the findings from the GuardDuty console
Why it fails: GuardDuty findings are immutable records of security-relevant activity; the service provides no delete operation in either the console or the API. You can archive findings, which moves them out of the active list, but archiving does not delete the finding and does not prevent the same finding type from recurring. Manual deletion is simply not possible, so the only effective suppression mechanism is a filter with conditions that exclude the false-positive pattern.
- C
Disable the GuardDuty detector for the affected accounts
Why it fails: Disabling the GuardDuty detector is a region-level switch that stops all threat detection and halts generation of every finding type for that account, not just the low-severity item you want to suppress. This also suspends access to the findings list (or stops updates to existing findings) and disables downstream integrations such as EventBridge and Security Hub, so real high-severity threats would go unnoticed. Suppressing a single false positive should never require giving up all visibility into that account, which is why filters are the correct approach.
- D
Create a GuardDuty filter to suppress the findings
GuardDuty filters let you define conditions on finding attributes like severity, type, or resource tags, and when you enable the 'suppress' option, findings matching the filter are automatically hidden from the console's active findings list. Unlike archiving or deletion, this is a non-destructive suppression: the underlying findings remain in your history and are still accessible via the API, so audit trails stay intact. This is the intended mechanism for handling known false positives, and filters can be shared or applied via AWS Organizations to suppress consistently across accounts.