//! Authentication: `AuthContext`, `Identity`, `IdentityProvider`, `AuthToken`, //! `ConfigIdentityProvider`. //! //! See `docs/architecture/crates/core/auth.md` for the full specification. use std::collections::HashMap; use std::net::SocketAddr; #[derive(Debug, Clone, PartialEq)] pub struct Identity { pub id: String, pub scopes: Vec, pub resources: HashMap>, } #[derive(Clone)] pub struct AuthContext { pub identity: Option, pub alpn: Vec, pub remote_addr: Option, pub tls_client_fingerprint: Option, }