pub enum RoleMappingCondition {
HasClaim {
claim: String,
value: Option<String>,
},
InGroup {
group: String,
},
HasRole {
role: String,
},
FromTenant {
tenant_id: String,
},
AuthMethod {
method: String,
},
EmailDomain {
domain: String,
},
UsernamePattern {
pattern: String,
},
And {
conditions: Vec<RoleMappingCondition>,
},
Or {
conditions: Vec<RoleMappingCondition>,
},
Not {
condition: Box<RoleMappingCondition>,
},
}Expand description
Role mapping condition (alias for backward compatibility) Provides a more expressive condition language for role mapping
Variants§
HasClaim
Match a specific claim value
InGroup
Match group membership
HasRole
Match existing role
FromTenant
Match tenant ID
AuthMethod
Match authentication method
EmailDomain
Match email domain
UsernamePattern
Match username pattern (supports wildcards)
And
All conditions must match
Fields
§
conditions: Vec<RoleMappingCondition>Or
Any condition must match
Fields
§
conditions: Vec<RoleMappingCondition>Not
Negate a condition
Fields
§
condition: Box<RoleMappingCondition>Implementations§
Trait Implementations§
Source§impl Clone for RoleMappingCondition
impl Clone for RoleMappingCondition
Source§fn clone(&self) -> RoleMappingCondition
fn clone(&self) -> RoleMappingCondition
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 RoleMappingCondition
impl RefUnwindSafe for RoleMappingCondition
impl Send for RoleMappingCondition
impl Sync for RoleMappingCondition
impl Unpin for RoleMappingCondition
impl UnsafeUnpin for RoleMappingCondition
impl UnwindSafe for RoleMappingCondition
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