pub struct SecurityMetadata {
pub creation_ip: String,
pub current_ip: String,
pub creation_location: Option<GeolocationInfo>,
pub current_location: Option<GeolocationInfo>,
pub security_flags: Vec<SecurityFlag>,
pub risk_score: u8,
pub location_changed: bool,
pub ip_changed: bool,
pub failed_auth_attempts: u32,
}
Expand description
Security metadata for sessions
Fields§
§creation_ip: String
IP address when session was created
current_ip: String
Current IP address
creation_location: Option<GeolocationInfo>
Geographic location when created
current_location: Option<GeolocationInfo>
Current geographic location
security_flags: Vec<SecurityFlag>
Security flags
risk_score: u8
Risk score (0-100)
location_changed: bool
Whether location has changed
ip_changed: bool
Whether IP has changed
failed_auth_attempts: u32
Number of failed authentication attempts
Trait Implementations§
Source§impl Clone for SecurityMetadata
impl Clone for SecurityMetadata
Source§fn clone(&self) -> SecurityMetadata
fn clone(&self) -> SecurityMetadata
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 SecurityMetadata
impl Debug for SecurityMetadata
Source§impl<'de> Deserialize<'de> for SecurityMetadata
impl<'de> Deserialize<'de> for SecurityMetadata
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 SecurityMetadata
impl RefUnwindSafe for SecurityMetadata
impl Send for SecurityMetadata
impl Sync for SecurityMetadata
impl Unpin for SecurityMetadata
impl UnwindSafe for SecurityMetadata
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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