pub struct UpstreamAllowlist {
pub url_prefixes: Vec<String>,
pub hosts: Vec<String>,
}Expand description
Optional explicit allowlist for upstreams. When present it overrides the egress denylist: a URL matching one of these prefixes/hosts is proxied even if it would otherwise be blocked.
§Security
Only set entries here for hosts you genuinely intend the proxy to reach; an allowlist entry pointing at loopback/private space re-opens SSRF by design.
Fields§
§url_prefixes: Vec<String>URL prefixes to allow verbatim, e.g. http://api.example.com/.
hosts: Vec<String>Bare hostnames (no scheme/port) to allow regardless of address,
e.g. api.example.com.
Trait Implementations§
Source§impl Clone for UpstreamAllowlist
impl Clone for UpstreamAllowlist
Source§fn clone(&self) -> UpstreamAllowlist
fn clone(&self) -> UpstreamAllowlist
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 UpstreamAllowlist
impl Debug for UpstreamAllowlist
Source§impl Default for UpstreamAllowlist
impl Default for UpstreamAllowlist
Source§fn default() -> UpstreamAllowlist
fn default() -> UpstreamAllowlist
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for UpstreamAllowlist
impl<'de> Deserialize<'de> for UpstreamAllowlist
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
impl Eq for UpstreamAllowlist
Source§impl PartialEq for UpstreamAllowlist
impl PartialEq for UpstreamAllowlist
Source§impl Serialize for UpstreamAllowlist
impl Serialize for UpstreamAllowlist
impl StructuralPartialEq for UpstreamAllowlist
Auto Trait Implementations§
impl Freeze for UpstreamAllowlist
impl RefUnwindSafe for UpstreamAllowlist
impl Send for UpstreamAllowlist
impl Sync for UpstreamAllowlist
impl Unpin for UpstreamAllowlist
impl UnsafeUnpin for UpstreamAllowlist
impl UnwindSafe for UpstreamAllowlist
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.