pub struct PropagationDestinationPolicy {
pub allowed_node_ids: Vec<String>,
pub allowed_targets: Vec<AllowedPropagationTarget>,
pub deny_sensitive_ip_literals: bool,
pub require_explicit_port: bool,
}Expand description
Allowlist and safety guards for downstream targets.
Fields§
§allowed_node_ids: Vec<String>Stable service identities that may receive forwarded credentials.
allowed_targets: Vec<AllowedPropagationTarget>Explicit network targets that may receive forwarded credentials.
deny_sensitive_ip_literals: boolReject direct IP-literal targets for loopback/private/link-local style addresses unless they are explicitly allowed by a matching CIDR rule.
require_explicit_port: boolRequire callers that build targets from URLs to provide an explicit port.
Implementations§
Source§impl PropagationDestinationPolicy
impl PropagationDestinationPolicy
Sourcepub fn builder() -> PropagationDestinationPolicyBuilder<((), (), (), ())>
pub fn builder() -> PropagationDestinationPolicyBuilder<((), (), (), ())>
Create a builder for building PropagationDestinationPolicy.
On the builder, call .allowed_node_ids(...)(optional), .allowed_targets(...)(optional), .deny_sensitive_ip_literals(...)(optional), .require_explicit_port(...)(optional) to set the values of the fields.
Finally, call .build() to create the instance of PropagationDestinationPolicy.
Trait Implementations§
Source§impl Clone for PropagationDestinationPolicy
impl Clone for PropagationDestinationPolicy
Source§fn clone(&self) -> PropagationDestinationPolicy
fn clone(&self) -> PropagationDestinationPolicy
Returns a duplicate of the value. Read more
1.0.0 · 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 PropagationDestinationPolicy
impl Debug for PropagationDestinationPolicy
Source§impl Default for PropagationDestinationPolicy
impl Default for PropagationDestinationPolicy
Source§fn default() -> PropagationDestinationPolicy
fn default() -> PropagationDestinationPolicy
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for PropagationDestinationPolicy
impl<'de> Deserialize<'de> for PropagationDestinationPolicy
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
Source§impl PartialEq for PropagationDestinationPolicy
impl PartialEq for PropagationDestinationPolicy
Source§fn eq(&self, other: &PropagationDestinationPolicy) -> bool
fn eq(&self, other: &PropagationDestinationPolicy) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Eq for PropagationDestinationPolicy
impl StructuralPartialEq for PropagationDestinationPolicy
Auto Trait Implementations§
impl Freeze for PropagationDestinationPolicy
impl RefUnwindSafe for PropagationDestinationPolicy
impl Send for PropagationDestinationPolicy
impl Sync for PropagationDestinationPolicy
impl Unpin for PropagationDestinationPolicy
impl UnsafeUnpin for PropagationDestinationPolicy
impl UnwindSafe for PropagationDestinationPolicy
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,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more