misd/raven-bundle
Symfony bundle that integrates the Raven Sentry client, automatically capturing exceptions and errors and reporting them to Sentry. Provides configurable Symfony service wiring so PHP applications can add Sentry error tracking with minimal setup.
config/auth.php. Choosing it implies committing to a legacy Symfony generation and porting it; staying on Laravel means reimplementing the protocol in a custom guard.ptags group mapping, kid key rotation, replay-protection storage, SSO logout — which is usually the bulk of the actual epic.Consider it — or more accurately, consider reading it — only when all of the following hold:
WLS-Response, extract CRSid, map to a local user, done.Look elsewhere when:
Guard or Socialite-style provider and reimplement WLS-Response signature verification, issue freshness, kid handling, and params replay protection yourself — or use a maintained UCam WebAuth library as the protocol layer.onelogin/php-saml, or an OIDC broker, behind a thin adapter you own.To executives: This is a small, unmaintained Symfony 2 plugin for Cambridge's legacy Raven login, not a product decision in itself. Its value is as a signal that one of our target segments authenticates through institutional SSO, and as a free specification that lets us price that work accurately. The recommendation is not to adopt it: a one-star, zero-dependent, end-of-life-framework dependency sitting in our most security-sensitive code path, with no vendor to call when it breaks. Instead, treat it as a reference, budget a short engineering spike (days) to implement Raven/Shibboleth SSO natively or via a supported service-provider stack, and confirm with the customer which protocol they actually require before it enters the roadmap. Cost of the build path: days. Cost of the dependency: an unpatched auth library we cannot get support for, owned by us forever.
To engineering: Read it, don't ship it. The reusable content is the WLS-Response validation logic and the security-listener wiring — both portable into a Laravel guard or a modern Symfony authenticator inside a sprint. Any implementation must include independent signature and WLS-Response verification, issue timestamp tolerance with NTP discipline, url/fail code checks, a shared (Redis/DB) replay-protection store for params, and an explicit decision on how CRSid and ptags map to our user and role model. Design for the failure modes now: IdP outage and redirect loops, kid rotation causing total login outage without a key-refresh path, clock skew on issue, ptags changes not re-evaluated on live sessions, and SSO logout not propagated. The dominant effort is the framework gap and the protocol hardening — not the plugin scaffolding.
How can I help you explore Laravel packages today?