Skip to main content

rskit_authz/
checker.rs

1//! Lightweight authorization traits.
2
3use crate::engine::{Decision, Request};
4
5/// Policy enforcement point for authorization checks.
6pub trait Checker: Send + Sync {
7    /// Evaluate a request and return the full decision.
8    fn authorize(&self, request: &Request) -> Decision;
9
10    /// Return `true` when the request is allowed.
11    fn check(&self, request: &Request) -> bool {
12        self.authorize(request).allowed
13    }
14}