spomky-labs/dbsc-bundle
Symfony bundle for implementing Device Bound Session Credentials (DBSC), binding sessions to device-held keys to reduce cookie theft and session hijacking. Provides configuration, endpoints, and integration with Symfony security for stronger, phishing-resistant session protection.
authorization round-trip lets registration be tied to values your backend controls or can verify—tenant ID, invite code, device posture, risk score, or enrollment context—without exposing them as loose client state.include_site and allowed_refresh_initiators make it possible to choose site-scoped sessions and explicitly control which origins may initiate refreshes, which matters for app suites, admin subdomains, and embedded flows.Secure-Session-Skipped logging gives a signal when browsers skip DBSC because refresh endpoints are unreachable, erroring, or over quota. That is directly useful for launch readiness and incident diagnosis.jwk header first with legacy fallback, optional aud checking—show the area is still moving.For executives: This package lets us add browser-backed device binding to login sessions, reducing the value of stolen cookies and strengthening account-takeover defenses. The 0.3.0 release is a minor feature update with no stated breaking changes, and it improves production readiness through backend-verifiable registration binding, safer session expiry behavior, and better operational visibility. It is best positioned as a security differentiator and staged rollout, not a universal replacement for existing session controls, because DBSC browser support is still emerging.
For engineering: We can avoid owning a complex, evolving security spec. The bundle handles DBSC registration, refresh, proof verification, cookie binding, and per-firewall configuration. 0.3.0 adds authorization binding, site-scoped sessions, allowed refresh initiators, skip logging, stricter proof checks, graceful expired-session handling, and a much stronger profiler for debugging headless fetch exchanges. Recommend a feature-flagged pilot with monitoring and fallback behavior.
For security and operations: The release improves auditability and failure handling: skipped DBSC is logged, expired sessions end gracefully with a cleared cookie, unknown sessions still return 401, and the profiler surfaces the full exchange. These are meaningful operational controls, but we should still threat-model browser coverage, refresh endpoint reliability, and cookie-prefix choices before broad rollout.
How can I help you explore Laravel packages today?