truckersmp/steam-socialite
A Laravel Socialite provider for Steam authentication. Let users sign in with Steam and retrieve their Steam profile data using a familiar Socialite driver, making it easy to add Steam login to Laravel apps and community platforms.
Package: truckersmp/steam-socialite — a Laravel Socialite driver that adds Steam as an authentication provider. Steam uses OpenID 2.0 rather than OAuth 2.0, so this package bridges Socialite's OAuth-shaped contract onto Steam's OpenID flow.
Architecture fit
Socialite::driver('steam')->redirect() / ->user() like any other provider.Integration feasibility
composer require, register the provider, add two routes, persist the returned Steam ID against a local user record.TrustProxies is configured. This is the single most likely cause of a post-upgrade auth outage.web middleware group (session started). Any stateless usage — API-driven login, mobile handoff, SPA calling a token endpoint — must explicitly call stateless() on both the redirect and the callback, or authentication fails.Technical risk
1.10.0. Teams relying on caret constraints (^1.9) will pull this automatically on the next composer update, with no deliberate upgrade step. This is the most important thing to communicate.Key questions
TrustProxies correctly configured for the actual header chain?web middleware group, or are they stateless (API routes, mobile clients, SPA)? If stateless, has stateless() been applied to both ends?Stack fit
APP_URL and proxy trust for other OAuth providers, most of the work is already done.Migration path
composer require truckersmp/steam-socialite:^1.10) rather than letting a routine composer update pull it in unattended.TrustProxies middleware against the actual edge topology — verify X-Forwarded-Proto/X-Forwarded-Host are trusted so Laravel's computed callback URL matches the redirect URL.web middleware, or add stateless() to both calls where sessions are genuinely unavailable.claimed_id checks, hand-rolled nonce validation). Leaving them in creates confusion about which layer owns the guarantee.Compatibility
Sequencing
Maintenance
Support
Scaling
Failure modes
stateless() on one of the two calls → intermittent, confusing failures that only appear in the stateless flow. Most likely to slip through QA.Ramp-up
claimed_id semantics, realm-based trust) is the only conceptual speed bump.How can I help you explore Laravel packages today?