kuleuven/shibboleth-bundle
A Symfony bundle that adds Shibboleth single sign-on authentication to your application, handling service provider setup, attribute mapping, and user sessions so you can integrate institutional SSO with minimal configuration.
eduPersonPrincipalName, eduPersonAffiliation, mail, displayName, persistent-id) map to your user record, how you handle first-login JIT provisioning, how you reconcile an SSO identity with an existing email-based account, and how role/affiliation drives authorization. That's a product decision about onboarding UX and account model, and it's the part worth copying.mod_shib in Apache. The real work is SP configuration, IdP federation enrollment (e.g., eduGAIN, InCommon), and per-customer metadata exchange. That reframes the estimate from "a few days of PHP" to "a multi-week integration plus per-customer onboarding ops."First, a scoping correction that matters for the decision: this is not a Laravel package. kuleuven/shibboleth-bundle is a Symfony 2 bundle. Its service provider, DI container, and security firewall integration are all Symfony-specific and will not drop into a Laravel application. Treat it as a reference implementation and requirements document, not an installable dependency.
Consider it when:
mod_shib) and only need PHP-side session/user hydration.Look elsewhere when:
laravel-saml2 / aacotroneo/laravel-saml2, a Socialite SAML driver, or SimpleSAMLphp as the SP — or, better, a managed IdP.mod_shib, it's not applicable.To executives: Institutional SSO is a market-access question, not a code question. If higher education or research is a target segment, buyers will ask whether we accept their campus identities; if we don't, we're disqualifying ourselves in procurement. The good news is we don't need to build identity — we integrate or buy it. This specific package is a 2016-era Symfony component with no maintenance and no user base; we should not take it as a dependency. What we should take is its attribute-mapping design and its implicit cost model: server-side SP configuration plus per-customer federation onboarding is where the effort actually lives. Recommend a short spike to validate demand and a buy-leaning recommendation (managed IdP) unless a specific customer contract justifies the integration cost.
To engineering: Not a Laravel package — it's Symfony 2, EOL, unmaintained since 2016, 17 stars, zero dependents, LGPL-3.0. Do not composer require. Read it for the attribute-to-user mapping and JIT provisioning flow; expect the Shibboleth SP (mod_shib) to do the protocol work and the app to consume headers. If we proceed on Laravel, the candidates are laravel-saml2, a Socialite SAML driver, or SimpleSAMLphp as SP — and we should budget explicitly for SP config, certificate/metadata rotation, and per-IdP attribute release negotiation, which is the bulk of the schedule.
How can I help you explore Laravel packages today?