pub struct RemoteReadWorkerAuthorizer { /* private fields */ }Expand description
Injects the configured server-local read policy at every worker boundary.
Implementations§
Source§impl RemoteReadWorkerAuthorizer
impl RemoteReadWorkerAuthorizer
Sourcepub fn new(local_authorizer: Arc<dyn LocalReadAuthorizationRecheck>) -> Self
pub fn new(local_authorizer: Arc<dyn LocalReadAuthorizationRecheck>) -> Self
Create a worker authorizer from the exact policy used for local reads.
Verify the transport delegation and locally recheck the end-user’s permission before any worker storage/session operation occurs.
Authorize a delegation and create a new subject-bound worker session.
A rejected scope never creates a session, so a later worker cannot use a broader authority than the corresponding local read.
Trait Implementations§
Source§impl Clone for RemoteReadWorkerAuthorizer
impl Clone for RemoteReadWorkerAuthorizer
Source§fn clone(&self) -> RemoteReadWorkerAuthorizer
fn clone(&self) -> RemoteReadWorkerAuthorizer
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 moreAuto Trait Implementations§
impl !RefUnwindSafe for RemoteReadWorkerAuthorizer
impl !UnwindSafe for RemoteReadWorkerAuthorizer
impl Freeze for RemoteReadWorkerAuthorizer
impl Send for RemoteReadWorkerAuthorizer
impl Sync for RemoteReadWorkerAuthorizer
impl Unpin for RemoteReadWorkerAuthorizer
impl UnsafeUnpin for RemoteReadWorkerAuthorizer
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request