PHPackages                             camara-de-comercio-de-valledupar/laravel-sso-client - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. camara-de-comercio-de-valledupar/laravel-sso-client

ActiveLibrary

camara-de-comercio-de-valledupar/laravel-sso-client
===================================================

SSO client package for Laravel receiver applications (Cámara de Comercio de Valledupar)

v1.0.1(1mo ago)06↑2900%proprietaryPHPPHP ^8.2

Since Mar 27Pushed 1mo agoCompare

[ Source](https://github.com/jrdeavila/laravel-sso-client)[ Packagist](https://packagist.org/packages/camara-de-comercio-de-valledupar/laravel-sso-client)[ RSS](/packages/camara-de-comercio-de-valledupar-laravel-sso-client/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (2)Used By (0)

camara-de-comercio-de-valledupar/laravel-sso-client
===================================================

[](#camara-de-comercio-de-valleduparlaravel-sso-client)

SSO client package for Laravel receiver applications for Cámara de Comercio de Valledupar.

---

Requisitos
----------

[](#requisitos)

- PHP 8.2+
- Laravel 11 o Laravel 12
- Acceso a la base de datos compartida de usuarios de Cámara de Comercio de Valledupar (conexión configurada en la receptora)

---

Instalación
-----------

[](#instalación)

```
composer require camara-de-comercio-de-valledupar/laravel-sso-client

# Opcional — publicar config para sobrescribir valores por defecto:
php artisan vendor:publish --tag=sso-config
```

El Service Provider se registra automáticamente vía package auto-discovery.

---

Variables de entorno requeridas
-------------------------------

[](#variables-de-entorno-requeridas)

VariableDescripciónEjemplo`SSO_SECRET`Secret compartido con el lanzador(coordinarlo con el administrador del lanzador)`SSO_LAUNCHER_URL`URL base del lanzador`https://lanzador.ccvalledupar.org.co``SSO_TOKEN_TTL`TTL del token en segundos`60``SSO_REDIRECT_AFTER_LOGIN`Ruta destino tras login exitoso`/dashboard`Las variables `SSO_TOKEN_PARAM` (default: `token`) y `SSO_USER_ID_FIELD` (default: `sub`) ya tienen los valores correctos para trabajar con el lanzador. Solo sobreescribir si se cambia la configuración en el lanzador.

---

Lo que el paquete registra automáticamente
------------------------------------------

[](#lo-que-el-paquete-registra-automáticamente)

- **Ruta** `GET /sso/callback` (named `sso.callback`)
- **Middleware alias** `sso.token` → `ValidateSsoToken`
- **Config** `sso.*` (publicable con tag `sso-config`)
- No hay migraciones — la base de datos de usuarios ya es compartida entre el lanzador y las receptoras

---

Flujo completo
--------------

[](#flujo-completo)

```
Usuario hace clic en el lanzador
↓
Lanzador genera token (TTL: 60s)
payload: { sub: 42, app: "slug", iat: ..., exp: ... }
↓
Redirect → https://receptora.com/sso/callback?token=xxx
↓
Middleware ValidateSsoToken → valida firma HMAC-SHA256 y expiración
↓
SsoController → User::find(42) en DB compartida
↓
Auth::login($user) → redirect a SSO_REDIRECT_AFTER_LOGIN

```

**Formato del token:** `base64(json(payload)).hmac_sha256(base64(json(payload)), secret)`Son dos partes separadas por punto — no es JWT estándar de tres partes.

---

Errores comunes
---------------

[](#errores-comunes)

URL recibidaCausaSolución`?error=sso_invalid`Secret distinto o token malformadoVerificar que `SSO_SECRET` coincide con el del lanzador`?error=sso_failed`Token expirado (&gt; 60s) o inválidoEl usuario debe volver al lanzador y reintentar`?error=sso_user_not_found`El ID del payload no existe en la DBVerificar la conexión a la base de datos compartida

###  Health Score

39

—

LowBetter than 86% of packages

Maintenance90

Actively maintained with recent releases

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

47d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/188382263?v=4)[desarrolladorccv](/maintainers/desarrolladorccv)[@desarrolladorccv](https://github.com/desarrolladorccv)

---

Top Contributors

[![jrdeavila](https://avatars.githubusercontent.com/u/70474202?v=4)](https://github.com/jrdeavila "jrdeavila (2 commits)")

### Embed Badge

![Health badge](/badges/camara-de-comercio-de-valledupar-laravel-sso-client/health.svg)

```
[![Health](https://phpackages.com/badges/camara-de-comercio-de-valledupar-laravel-sso-client/health.svg)](https://phpackages.com/packages/camara-de-comercio-de-valledupar-laravel-sso-client)
```

###  Alternatives

[anourvalar/eloquent-serialize

Laravel Query Builder (Eloquent) serialization

11320.2M21](/packages/anourvalar-eloquent-serialize)[namu/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

54324.5k](/packages/namu-wirechat)[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

135192.6k5](/packages/statamic-rad-pack-runway)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
