pub struct PolicyDecisionService { /* private fields */ }Implementations§
Source§impl PolicyDecisionService
impl PolicyDecisionService
pub fn new() -> Self
Sourcepub fn evaluate_access(
&self,
qapp_id: &str,
requested_scope: &str,
sensitivity: SensitivityClass,
epistemic: EpistemicStatus,
active_grants: &[ConsentGrantRecord],
now_unix: u64,
is_proxy_action: bool,
) -> DecisionResult
pub fn evaluate_access( &self, qapp_id: &str, requested_scope: &str, sensitivity: SensitivityClass, epistemic: EpistemicStatus, active_grants: &[ConsentGrantRecord], now_unix: u64, is_proxy_action: bool, ) -> DecisionResult
Evaluates if a qApp capability is permitted to act on a record with a given sensitivity.
is_proxy_action marks a write made by an agent acting on behalf of the principal
(the envelope carries a proxy_did distinct from the owner). Supported-agency
accountability holds such a write in escrow for M-of-N guardian co-signature rather than
committing it silently — see [super::guardianship]. Non-proxy writes (the principal
acting for themselves) are unaffected.
Auto Trait Implementations§
impl Freeze for PolicyDecisionService
impl RefUnwindSafe for PolicyDecisionService
impl Send for PolicyDecisionService
impl Sync for PolicyDecisionService
impl Unpin for PolicyDecisionService
impl UnsafeUnpin for PolicyDecisionService
impl UnwindSafe for PolicyDecisionService
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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
§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>
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