Skip to main content

Crate huskarl_resource_server

Crate huskarl_resource_server 

Source
Expand description

§OAuth2 library for resource servers.

This library handles concerns of interest to OAuth2 resource servers. The primary need in this case is validating provided access tokens, and checking whether the authorization matches the necessary level.

Currently this crate helps to handle the first of these; validating access tokens. It then provides the context from those access tokens which let the server implement the rest of the authorization checking.

§Example with RFC 9068 token validation:

use std::sync::Arc;
use huskarl_resource_server::core::jwk::JwksSource;
use huskarl_resource_server::core::http::HttpClient;
use huskarl_resource_server::validator::rfc9068::Rfc9068Validator;

let validator = Rfc9068Validator::builder()
  .issuer("https://issuer")
  .audience("audience")
  .jws_verifier_factory(Arc::new(JwksSource::builder().http_client(http_client).build()))
  .build();

Modules§

core
Huskarl provides tools for implementing secure OAuth2 in rust.
error
RFC 6750 attribute-based error types and traits for resource server responses.
introspection
Low-level RFC 7662 token introspection call.
validator
Access token validation traits and implementations.

Structs§

DefaultJwsVerifierPlatform
The platform default core::crypto::verifier::JwsVerifierPlatform implementation.