pub struct ProxyServer { /* private fields */ }Expand description
Universal proxy server.
Implementations§
Source§impl ProxyServer
impl ProxyServer
Sourcepub fn from_config(config: ProxyConfig) -> Self
pub fn from_config(config: ProxyConfig) -> Self
Create from YAML config file.
Sourcepub fn with_descriptors(self, pool: DescriptorPool) -> Self
pub fn with_descriptors(self, pool: DescriptorPool) -> Self
Create with an embedded descriptor pool (for sid-proxy backward compat).
Sourcepub fn with_auth_decider(self, decider: Arc<dyn AuthDecider>) -> Self
pub fn with_auth_decider(self, decider: Arc<dyn AuthDecider>) -> Self
Inject an in-process forward-auth / PDP decision (embedded Tier-2 hook).
The decider gates every proxied request inline and also backs the
/verify forward-auth endpoint. Its signature is axum-free (see
hooks::AuthDecider), so the embedder never names an HTTP framework.
Sourcepub fn with_oidc_backend(self, backend: Arc<dyn OidcBackend>) -> Self
pub fn with_oidc_backend(self, backend: Arc<dyn OidcBackend>) -> Self
Back the stateless OIDC surface (discovery, JWKS, userinfo) with the embedder’s key/client metadata (embedded Tier-2 hook).
When set, this supersedes the config-driven static oidc_discovery
routes. See hooks::OidcBackend.
Sourcepub fn with_extra_routes(
self,
routes: impl IntoIterator<Item = ExtraRoute>,
) -> Self
pub fn with_extra_routes( self, routes: impl IntoIterator<Item = ExtraRoute>, ) -> Self
Register extra stateless routes through an axum-free adapter (embedded
Tier-2 hook). See hooks::ExtraRoute / hooks::ExtraRouteHandler.
Sourcepub fn with_verify_path(self, path: impl Into<String>) -> Self
pub fn with_verify_path(self, path: impl Into<String>) -> Self
Set the path at which the injected AuthDecider answers forward-auth
sub-requests (/verify). Independent of any JWT forward_auth config, so
a decider-only embedder can place it without a JWT block.
Resolution order for the path: this override, then
auth.forward_auth.path from config, then the default /auth/verify.
Auto Trait Implementations§
impl !RefUnwindSafe for ProxyServer
impl !UnwindSafe for ProxyServer
impl Freeze for ProxyServer
impl Send for ProxyServer
impl Sync for ProxyServer
impl Unpin for ProxyServer
impl UnsafeUnpin for ProxyServer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request