Skip to main content

fraiseql_server/middleware/
mod.rs

1//! HTTP middleware.
2
3pub mod admin_scope;
4pub mod auth;
5pub mod content_type;
6pub mod cors;
7pub mod header_limits;
8pub mod hs256_auth;
9pub mod metrics;
10pub mod oidc_auth;
11pub mod rate_limit;
12pub mod tenant;
13pub mod trace;
14
15pub use auth::{BearerAuthState, bearer_auth_middleware};
16pub use content_type::require_json_content_type;
17pub use cors::{cors_layer, cors_layer_restricted, security_headers_middleware};
18pub use header_limits::header_limits_middleware;
19pub use hs256_auth::{Hs256AuthState, hs256_auth_middleware};
20pub use metrics::metrics_middleware;
21pub use oidc_auth::{
22    AuthUser, OidcAuthState, SessionJti, admin_auth_middleware, oidc_auth_middleware,
23    required_auth_middleware,
24};
25pub use rate_limit::{
26    RateLimitConfig, RateLimiter, RateLimitingSecurityConfig, rate_limit_middleware,
27};
28pub use tenant::{TenantContext, tenant_middleware};
29pub use trace::trace_layer;
30
31#[cfg(test)]
32mod tests;