Class BrowserSessionBoundary
java.lang.Object
io.fluxzero.idp.bff.session.BrowserSessionBoundary
Cookie/CSRF policy shared by application BFFs; it never establishes identity or authorization.
-
Constructor Summary
ConstructorsConstructorDescriptionBrowserSessionBoundary(URI origin, String application, boolean loopbackDevelopment) HTTP is permitted only by an explicit local-development flag and a loopback or .localhost host.BrowserSessionBoundary(URI origin, String application, boolean loopbackDevelopment, Set<URI> frontendOrigins) Explicit additional browser origins, for a frontend and API on separate same-site hosts. -
Method Summary
Modifier and TypeMethodDescriptionorigin()booleanpermitsMutation(String method, List<String> origins, List<String> csrfHeaders, BrowserHandle expectedCsrf, String fetchSite) A synchronizer token is generated independently and retained in the protected session payload.booleanpermitsSocket(List<String> origins, String fetchSite) Browsers send Origin on WebSocket handshakes; the proxy retains it for later frames.readCookie(List<String> cookieHeaders) Duplicate or malformed cookie values are rejected, not resolved by first/last-header precedence.static StringreturnPath(String requested) Preserves local router paths, query and fragment, without ambiguous/external redirect targets.setCookie(BrowserHandle handle, Duration lifetime)
-
Constructor Details
-
BrowserSessionBoundary
-
BrowserSessionBoundary
-
-
Method Details
-
origin
-
cookieName
-
setCookie
-
clearCookie
-
readCookie
Duplicate or malformed cookie values are rejected, not resolved by first/last-header precedence. -
permitsMutation
-
permitsSocket
-
returnPath
-