Download the PHP package track-any-device/sso-client without Composer
On this page you can find all versions of the php package track-any-device/sso-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download track-any-device/sso-client
More information about track-any-device/sso-client
Files in track-any-device/sso-client
Package sso-client
Short Description OAuth2 SSO client — token verification, callback controller, and route helper.
License MIT
Informations about the package sso-client
track-any-device/sso-client
OAuth2 SSO client for the Track Any Device platform — Socialite driver, callback controller, and route helper that integrate with package-sso-server (Passport-backed central auth).
Requirements
| Dependency | Version |
|---|---|
| PHP | ^8.3 |
| Laravel | ^13.7 |
| laravel/socialite | ^5.0 |
| track-any-device/core | ^0.0.2 |
| Stancl/Tenancy (host app) | ^3.x |
Installation
Laravel's package auto-discovery registers SsoClientServiceProvider automatically.
Publish the config stub:
Environment variables
Add to the host app's .env (and config/services.php):
Map them in config/services.php:
And surface in config/app.php (or a custom config file — see issue #3):
Routes the host app must register
Call SsoClient::routes() inside the tenant route group so the callback is
scoped correctly. The route must be exempt from any AuthorizeTenantAccess
middleware that guards authenticated routes.
Registered route:
| Method | URI | Name | Controller |
|---|---|---|---|
| GET | /sso/callback |
tenant.sso.callback |
SsoCallbackController |
Auth flow
- The service provider registers a
ssoSocialite driver backed bySsoProvider. - On boot, it resolves OAuth2 client credentials from the
oauth_clientstable (columnkindmatchesAPP_SURFACE), falling back toconfig/services.phpwhen the DB is unavailable (local dev). SsoCallbackControllerhandles the callback, logs the user in, and carries OTP freshness across the SSO boundary via thesms_2fa_verifiedsession key.
Session key written by this package
| Key | Type | Meaning |
|---|---|---|
sms_2fa_verified |
bool |
Set to true when the user's last_otp_validated_on is within 15 minutes. Host-app 2FA middleware must read this key to skip re-challenge. |
Flash key written on failure
| Key | Value |
|---|---|
errors_sso |
Human-readable error string |
Read in Blade: @if(session('errors_sso')) … @endif
Release workflow convention
The release workflow (.github/workflows/release.yml) auto-tags and publishes a GitHub release on every push to main. It derives the version bump from conventional commit prefixes:
| Commit prefix | Bump |
|---|---|
feat!: / BREAKING CHANGE |
major |
feat: |
minor |
fix:, chore:, docs:, refactor:, perf:, style:, test:, ci: |
patch |
Manual dispatch lets you override the bump type (patch / minor / major) regardless of commit messages.
No version field is kept in composer.json; Packagist reads the git tag.
All versions of sso-client with dependencies
laravel/framework Version ^13.7
laravel/socialite Version ^5.0
track-any-device/core Version ^0.8.0