PHPackages                             netsells/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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. netsells/sso-client

AbandonedArchivedLibrary[Authentication &amp; Authorization](/categories/authentication)

netsells/sso-client
===================

Client for the Netsells SSO server

2.1.0(6y ago)1335PHPPHP ^7.1

Since Dec 13Pushed 4y ago8 watchersCompare

[ Source](https://github.com/netsells/sso-client)[ Packagist](https://packagist.org/packages/netsells/sso-client)[ RSS](/packages/netsells-sso-client/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (4)Dependencies (3)Versions (11)Used By (0)

SSO Client
==========

[](#sso-client)

Client for the Netsells SSO. This consumes the headers from [Pomerium](https://www.pomerium.io/) and integrates them with Laravel's auth system.

Installation
------------

[](#installation)

Add to composer:

```
composer require netsells/sso-client
```

Add the following environment variable

```
POMERIUM_PUBLIC_KEY=

```

This is the base64 encoded public key. This is used to detemine that the JWT data came from Pomerium and not an attacker.

### User Provider Setup

[](#user-provider-setup)

The SSO client has two available modes, it can either use your existing auth provider (such as the laravel eloquent auth) or you can use the sso auth user provider (this is typically used when you do not want to store user info, just secure the site).

#### Existing eloquent setup

[](#existing-eloquent-setup)

The SSO middleware expects your auth config to be correctly configured. Specifically `auth.providers.users.model` as this is the model that is populated and authenticated on your behalf.

Buy default, the user is created if it does not exist based on the email sent by the SSO server. Should you wish to add more information to the User model (or any other model), you should add the following call to your AppServiceProvider. Have a look at the SSOUser DTO to see what information you can get from the SSO server.

```
SSOClient::setUserCallback(function ($user, \Netsells\SSOClient\User $data) {
    $user->first_name = $data->first_name;

    return $user;
});
```

If you wish to run some code when a user is created or updated via the SSO middleware, you can create the methods `ssoUserWasCreated` and `ssoUserWasUpdated` on the model.

#### No Database setup

[](#no-database-setup)

All you need to do is set the config, `auth.providers.users.driver` to `sso`. You can now use `Auth::user()` which will return an SSO User instead of a Laravel user.

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity64

Established project with proven stability

 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 ~108 days

Recently: every ~191 days

Total

9

Last Release

2255d ago

Major Versions

1.2.3 → 2.0.02020-04-27

### Community

Maintainers

![](https://www.gravatar.com/avatar/8fd3cc944adfb60bb9f271b2ebcf1dde1c26380682db0ba28e029cc42e09cebf?d=identicon)[spamoom](/maintainers/spamoom)

---

Top Contributors

[![spamoom](https://avatars.githubusercontent.com/u/99203?v=4)](https://github.com/spamoom "spamoom (14 commits)")

### Embed Badge

![Health badge](/badges/netsells-sso-client/health.svg)

```
[![Health](https://phpackages.com/badges/netsells-sso-client/health.svg)](https://phpackages.com/packages/netsells-sso-client)
```

###  Alternatives

[google/auth

Google Auth Library for PHP

1.4k286.7M205](/packages/google-auth)[stevenmaguire/oauth2-keycloak

Keycloak OAuth 2.0 Client Provider for The PHP League OAuth2-Client

2276.2M36](/packages/stevenmaguire-oauth2-keycloak)[robsontenorio/laravel-keycloak-guard

🔑 Simple Keycloak Guard for Laravel

5181.1M3](/packages/robsontenorio-laravel-keycloak-guard)[ellaisys/aws-cognito

AWS Cognito package that allows Auth and other related features using the AWS SDK for PHP

121242.9k1](/packages/ellaisys-aws-cognito)[microsoft/kiota-authentication-phpleague

Authentication provider for Kiota using the PHP League OAuth 2.0 client to authenticate against the Microsoft Identity platform

153.8M9](/packages/microsoft-kiota-authentication-phpleague)[rainlab/user-plugin

User plugin for October CMS

11854.7k15](/packages/rainlab-user-plugin)

PHPackages © 2026

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