pub enum SessionVariableSource {
Jwt {
claim: String,
},
Header {
header: String,
},
Literal {
value: String,
},
Enrichment {
field: String,
},
}Expand description
Where a session variable’s value comes from.
Variants§
Jwt
Pull from a JWT claim (e.g. "sub", "tenant_id", or a custom claim).
Header
Pull from an HTTP request header forwarded via SecurityContext.attributes.
Literal
A fixed literal value.
Enrichment
Pull from a DB-resolved enriched-identity field, read from the reserved
fraiseql.enriched.* attribute namespace (#539).
Unlike SessionVariableSource::Jwt, there is no fallback to a raw
claim or a well-known field: the namespace is forge-proof (the extractor
strips fraiseql. claims), and a missing enriched field is a hard error,
never a silently-skipped/empty GUC. This is the construct that carries the
fail-closed read-scoping guarantee.
Trait Implementations§
Source§impl Clone for SessionVariableSource
impl Clone for SessionVariableSource
Source§fn clone(&self) -> SessionVariableSource
fn clone(&self) -> SessionVariableSource
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 SessionVariableSource
impl Debug for SessionVariableSource
Source§impl<'de> Deserialize<'de> for SessionVariableSource
impl<'de> Deserialize<'de> for SessionVariableSource
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 SessionVariableSource
Source§impl PartialEq for SessionVariableSource
impl PartialEq for SessionVariableSource
Source§impl Serialize for SessionVariableSource
impl Serialize for SessionVariableSource
impl StructuralPartialEq for SessionVariableSource
Auto Trait Implementations§
impl Freeze for SessionVariableSource
impl RefUnwindSafe for SessionVariableSource
impl Send for SessionVariableSource
impl Sync for SessionVariableSource
impl Unpin for SessionVariableSource
impl UnsafeUnpin for SessionVariableSource
impl UnwindSafe for SessionVariableSource
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.