Download the PHP package track-any-device/sso-server without Composer

On this page you can find all versions of the php package track-any-device/sso-server. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package sso-server

track-any-device/sso-server

OAuth 2.0 authorization-code SSO server for the Track Any Device platform.
Wraps Laravel Passport to issue short-lived authorization codes that Socialite clients exchange for access tokens, with multi-tenant access control baked in.


Requirements

Dependency Version
PHP ^8.3
Laravel ^13.7
Laravel Passport ^13.0
track-any-device/core ^0.0.2

Installation

Publish the package config:


Environment variables

Add these to the .env of whichever surface runs the identity / login host:

Variable Default Description
APP_SURFACE core Surface name. Migrations only run when this is core. Values: core \| login \| my \| admin \| tenant
APP_DOMAIN track-any-device.com Root domain used to derive all sub-domain URLs
MY_DOMAIN my.{APP_DOMAIN} Hostname of the end-user "my" app
LOGIN_DOMAIN (current host) Hostname of the dedicated identity / login surface. Leave unset for single-host deploys

Migrations

Migrations are loaded automatically when APP_SURFACE=core (or is unset). They create:


Seeding

Seed the singleton clients for the web, my, admin, and graphql surfaces:

On first run the plain-text secret is printed to stdout once — copy it into the relevant client_secret env var on the consuming surface. To rotate a secret, delete the row and re-run.


Route registration

Web routes (login surface)

Register inside your login.{domain} route group (web middleware, Fortify session):

API routes (token-protected user info endpoint)

Register inside an auth:api middleware group:


Host-app contracts

The host app must define the following named routes:

Route name Surface Used when
login login Unauthenticated user hits /oauth/authorize
orders.index my Role::User logs in with no OAuth intent
tenant.select login tenant_user belongs to multiple tenants

The host app must bind Laravel\Fortify\Contracts\LoginResponse to TrackAnyDevice\SsoServer\Http\Responses\LoginResponse in a service provider:


Auth flow


Resources

OAuthClient

Extends Laravel\Passport\Client. Stored in oauth_clients.

Column Type Notes
id uuid Internal primary key
client_id varchar(64) Public OAuth identifier (tci_* prefix)
kind varchar(16) web \| my \| admin \| graphql \| tenant
tenant_id bigint nullable Set only for kind=tenant clients
client_secret_hash varchar bcrypt of the plain secret
redirect_uris json Whitelist of valid redirect URIs
logout_webhook_url varchar nullable Back-channel logout endpoint
is_active boolean Kill-switch

SsoToken

Audit log of issued tokens. Never deleted; consumed_at marks exchange.


Release workflow convention

Commit messages on main determine the version bump automatically:

Prefix Bump
feat!: / BREAKING CHANGE major
feat: minor
fix:, chore:, docs:, etc. patch

A manual bump can be forced via Actions → Release → Run workflow.
The workflow skips if there are no new commits since the last tag.


All versions of sso-server with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
laravel/framework Version ^13.7
laravel/passport Version ^13.0
track-any-device/core Version >=0.8.0 <1.0.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package track-any-device/sso-server contains the following files

Loading the files please wait ...