pub struct KnownCredential {
pub consumer_name: String,
pub kind: CredentialKind,
pub hash: String,
pub retire_at: Option<i64>,
pub id: Option<i64>,
pub selector: String,
}Expand description
One verifiable credential as the authenticator sees it.
Manual Debug: hash and selector are credential material (the
selector is the lookup key — for mtls rows the match value itself —
and the hash embeds a binding marker or a peppered digest), so both
are redacted, matching the store’s CredentialRecord precedent.
Fields§
§consumer_name: String§kind: CredentialKind§hash: String§retire_at: Option<i64>Scheduled retirement instant (DW-046, epoch seconds): the credential stops verifying once this passes. The STORE lookup filters retired rows in SQL; this field exists for the CACHED list, which was filled before the boundary and must go stale exactly on time — the registry lookup below re-checks it.
id: Option<i64>Store row id when the credential came from the state store (used
by the #124 pepper transition to re-hash a legacy-verified row in
place); None for config-seeded credentials.
selector: StringThe selector this credential was found under (the credential’s
lookup key — its own match value for mtls bindings).
Trait Implementations§
Source§impl Clone for KnownCredential
impl Clone for KnownCredential
Source§fn clone(&self) -> KnownCredential
fn clone(&self) -> KnownCredential
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for KnownCredential
impl Debug for KnownCredential
Source§impl From<&CredentialRecord> for KnownCredential
impl From<&CredentialRecord> for KnownCredential
Source§fn from(r: &CredentialRecord) -> Self
fn from(r: &CredentialRecord) -> Self
Auto Trait Implementations§
impl Freeze for KnownCredential
impl RefUnwindSafe for KnownCredential
impl Send for KnownCredential
impl Sync for KnownCredential
impl Unpin for KnownCredential
impl UnwindSafe for KnownCredential
Blanket Implementations§
§impl<T> AnyExt for T
impl<T> AnyExt for T
§fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
fn downcast_ref<T>(this: &Self) -> Option<&T>where
T: Any,
T behind reference§fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
fn downcast_mut<T>(this: &mut Self) -> Option<&mut T>where
T: Any,
T behind mutable reference§fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
fn downcast_rc<T>(this: Rc<Self>) -> Result<Rc<T>, Rc<Self>>where
T: Any,
T behind Rc pointer§fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
fn downcast_arc<T>(this: Arc<Self>) -> Result<Arc<T>, Arc<Self>>where
T: Any,
T behind Arc pointer§fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
fn downcast_box<T>(this: Box<Self>) -> Result<Box<T>, Box<Self>>where
T: Any,
T behind Box pointer§fn downcast_move<T>(this: Self) -> Option<T>
fn downcast_move<T>(this: Self) -> Option<T>
Self to T,
useful only in generic context as a workaround for specializationSource§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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
impl<T, X> CoerceTo<T> for Xwhere
T: CoerceFrom<X> + ?Sized,
fn coerce_rc_to(self: Rc<X>) -> Rc<T>
fn coerce_box_to(self: Box<X>) -> Box<T>
fn coerce_ref_to(&self) -> &T
fn coerce_mut_to(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
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>
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