pub struct ServiceSession {
pub id: String,
pub service_account: String,
pub auth_method: AuthMethod,
pub created_timestamp: SystemTime,
pub permissions: Vec<String>,
pub client_ip: String,
pub api_key_id: Option<String>,
/* private fields */
}Expand description
A session for an authenticated service
Fields§
§id: StringUnique session identifier
service_account: StringService account name
auth_method: AuthMethodAuthentication method used
created_timestamp: SystemTimeWhen the session was created (wall clock for logging)
permissions: Vec<String>Permissions granted in this session
client_ip: StringClient IP that created this session
api_key_id: Option<String>API key ID (if authenticated via API key)
Implementations§
Source§impl ServiceSession
impl ServiceSession
pub fn is_expired(&self) -> bool
Sourcepub fn time_until_expiration(&self) -> Duration
pub fn time_until_expiration(&self) -> Duration
Time until expiration
Sourcepub fn expires_in_secs(&self) -> u64
pub fn expires_in_secs(&self) -> u64
Seconds until expiration
Trait Implementations§
Source§impl Clone for ServiceSession
impl Clone for ServiceSession
Source§fn clone(&self) -> ServiceSession
fn clone(&self) -> ServiceSession
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 moreAuto Trait Implementations§
impl Freeze for ServiceSession
impl RefUnwindSafe for ServiceSession
impl Send for ServiceSession
impl Sync for ServiceSession
impl Unpin for ServiceSession
impl UnwindSafe for ServiceSession
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