pub struct RuleBucket {
pub rule_id: RuleId,
pub description: Option<String>,
pub blocked: Vec<RecordedAttempt>,
pub bypassed: Vec<RecordedBypass>,
pub last_drift_at_secs: Option<u64>,
}Expand description
All recorded attempts and bypasses for ONE WAF rule.
Fields§
§rule_id: RuleIdRule identifier the corpus is keyed on. Stored redundantly so a bucket extracted from the map stays self-describing.
description: Option<String>Optional human-readable rule name when the WAF exposes one (e.g. CRS rule “942100 — SQL Injection Attack: Detected”).
blocked: Vec<RecordedAttempt>Payloads that triggered this rule.
bypassed: Vec<RecordedBypass>Payloads that bypassed this rule (passed through to origin).
last_drift_at_secs: Option<u64>Epoch seconds of last detected ruleset drift — when CF Auto-Tune retrains, this updates and previously-blocked payloads become retry-eligible.
Trait Implementations§
Source§impl Clone for RuleBucket
impl Clone for RuleBucket
Source§fn clone(&self) -> RuleBucket
fn clone(&self) -> RuleBucket
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RuleBucket
impl Debug for RuleBucket
Source§impl Default for RuleBucket
impl Default for RuleBucket
Source§fn default() -> RuleBucket
fn default() -> RuleBucket
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for RuleBucket
impl<'de> Deserialize<'de> for RuleBucket
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for RuleBucket
impl RefUnwindSafe for RuleBucket
impl Send for RuleBucket
impl Sync for RuleBucket
impl Unpin for RuleBucket
impl UnsafeUnpin for RuleBucket
impl UnwindSafe for RuleBucket
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more