pub struct ControlPlaneCfg {
pub enabled: bool,
pub url: String,
pub tenant_id: String,
pub edge_token: String,
pub poll_interval: String,
pub report_interval: String,
pub forward_csp: bool,
pub enforce_quota: bool,
pub quota_poll_interval: String,
pub edge_id: String,
}Expand description
Managed-mode settings: when enabled, the edge pulls its policy from a remote control plane
(and hot-reloads it), reports metric deltas, and forwards CSP reports. The policy the control
plane pushes is the policy subset (auth/ratelimit/validation/headers/waf) — the edge keeps
its own local server/tls. The edge token is a secret, so prefer EDGEGUARD_CP_EDGE_TOKEN.
Fields§
§enabled: boolEnrol this instance with a managed control plane for pushed policy and quota. Off by default; EdgeGuard is fully functional without one.
url: StringBase URL of the control plane, e.g. https://cp.example.
tenant_id: StringThis edge’s tenant id at the control plane.
edge_token: StringPer-tenant edge token (Bearer). Prefer EDGEGUARD_CP_EDGE_TOKEN.
poll_interval: StringHow often to poll for policy, e.g. "30s".
report_interval: StringHow often to flush a metrics delta, e.g. "60s".
forward_csp: boolForward received CSP reports to the control plane (default true).
enforce_quota: boolEnforce the configured quota as a hard stop: poll the control plane’s
/v3/edge/{id}/quota and, while the edge is over its quota, reject the edge’s
traffic with 429 (a Retry-After reset hint). Off by default — opt in to turn the
rate signal into a hard cap. Prefer EDGEGUARD_CP_QUOTA_ENFORCE.
quota_poll_interval: StringHow often to poll the quota verdict, e.g. "30s". A failed poll keeps the last verdict, so
a control-plane blip neither over- nor under-enforces.
edge_id: StringThis edge’s identity in the control plane’s fleet view. Empty (the default) auto-detects from the hostname.
Set it explicitly where the hostname is not stable and not meaningful — a rolling Deployment replaces the pod name on every deploy, so each rollout would otherwise appear as a fresh set of edges with the previous set ageing out. A value that survives the roll (the workload’s name plus an ordinal) makes the fleet view track the edge rather than the process.
Trait Implementations§
Source§impl Clone for ControlPlaneCfg
impl Clone for ControlPlaneCfg
Source§fn clone(&self) -> ControlPlaneCfg
fn clone(&self) -> ControlPlaneCfg
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more