pub trait AuthzFacts:
Send
+ Sync
+ 'static {
// Required method
fn subject(&self) -> &str;
// Provided methods
fn has_scope(&self, _scope: &str) -> bool { ... }
fn has_role(&self, _role: &str) -> bool { ... }
}Expand description
Visão de autorização sobre a identidade da requisição, apagada de tipo.
Vive no core, e não no crate de autenticação, porque é contrato e não
implementação: não toca cripto, não sabe o que é um JWT, e é o que permite
que a macro #[authorize] gere código sem depender de qual crate
autenticou a requisição.
A implementação de autenticação publica um Arc<dyn AuthzFacts> nas
extensions; os guards de autorização leem de lá.
has_scope e has_role têm default false: um tipo de claims que só
carrega identidade nega toda autorização em vez de concedê-la por omissão.
Required Methods§
Provided Methods§
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".