PHPackages                             madmatt/silverstripe-shibboleth - 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. madmatt/silverstripe-shibboleth

ActiveSilverstripe-vendormodule[Authentication &amp; Authorization](/categories/authentication)

madmatt/silverstripe-shibboleth
===============================

Adds Shibboleth single-sign-on support to SilverStripe

2.0.0(3y ago)15061[1 issues](https://github.com/madmatt/silverstripe-shibboleth/issues)[1 PRs](https://github.com/madmatt/silverstripe-shibboleth/pulls)BSD-3-ClausePHPPHP &gt;=7.1

Since Nov 13Pushed 1y ago2 watchersCompare

[ Source](https://github.com/madmatt/silverstripe-shibboleth)[ Packagist](https://packagist.org/packages/madmatt/silverstripe-shibboleth)[ RSS](/packages/madmatt-silverstripe-shibboleth/feed)WikiDiscussions master Synced yesterday

READMEChangelog (2)Dependencies (1)Versions (4)Used By (0)

silverstripe-shibboleth
=======================

[](#silverstripe-shibboleth)

Extends the [silverstripe-saml](https://github.com/silverstripe/silverstripe-saml) module for Silverstripe 4 to provide [Shibboleth](https://wiki.shibboleth.net/confluence/display/IDP30/Home) specific bindings, and allow the silverstripe-saml module to be used with a Shibboleth-backed identity provider (IdP).

See the [silverstripe-saml developer documentation](https://github.com/silverstripe/silverstripe-saml/tree/master/docs/en) for the majority of information on how to configure this module. Additional features specific to Shibboleth are noted below.

Custom configuration
--------------------

[](#custom-configuration)

### Implementing your own custom SAMLConfiguration

[](#implementing-your-own-custom-samlconfiguration)

This module defines a sub-class of `SAMLConfiguration` for the `SAMLConfService`. If you want to extend it, make sure you extend `ShibSAMLConfiguration`.

### Specifying a custom attribute as the NameID

[](#specifying-a-custom-attribute-as-the-nameid)

Some Shibboleth implementations will always present a transient NameID, meaning that it can't be used to identify the same user every time. If this is the case, check with the IdP vendor first - the best option is to have the NameID returned in a persistent format (see [Shibboleth Name Identifiers documentation](https://wiki.shibboleth.net/confluence/display/CONCEPT/NameIdentifiers)).

However, if changing this isn't possible, you can optionally specify an attribute that is returned in the SAML response to use instead as the 'NameID' (e.g. the unique value used to lookup a user).

Do this by adding the following to your YML configuration:

```
# The below will use the eduPersonPrincipalName attribute to determine the NameID
# See a full list of oid -> 'friendly name' mappings here: https://incommon.org/community-practices-and-standards/object-identifier-registrations/
Madmatt\Shibboleth\SAMLConfiguration:
  nameid_override_attribute: "urn:oid:1.3.6.1.4.1.5923.1.1.1.6"
```

### Specifying a custom SilverStripe field to compare the NameID to

[](#specifying-a-custom-silverstripe-field-to-compare-the-nameid-to)

By default, the Shibboleth module does not change how the NameID is compared to how the base module works (e.g. it will store the NameID in the `GUID` column, and lookup existing members using that field). However, you can override this by providing a value for the `shib_unique_identifier_field` config variable.

This may be useful in a situation where you are migrating from the old SilverStripe `auth_external` module, using the Apache `mod_shib` module (which populates `$_SERVER['REMOTE_USER']` by default).

```
Madmatt\Shibboleth\SAMLConfiguration:
  shib_unique_identifier_field: Email
```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance6

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 71.4% 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 ~479 days

Total

3

Last Release

1415d ago

Major Versions

1.x-dev → 2.0.02022-06-27

### Community

Maintainers

![](https://www.gravatar.com/avatar/a496a763166447513522eeff7b822da348a006ce474e5224b1fddbd839c736dc?d=identicon)[madmatt](/maintainers/madmatt)

---

Top Contributors

[![muskie9](https://avatars.githubusercontent.com/u/870751?v=4)](https://github.com/muskie9 "muskie9 (10 commits)")[![madmatt](https://avatars.githubusercontent.com/u/893117?v=4)](https://github.com/madmatt "madmatt (4 commits)")

---

Tags

silverstripeSSOsamlshibboleth

### Embed Badge

![Health badge](/badges/madmatt-silverstripe-shibboleth/health.svg)

```
[![Health](https://phpackages.com/badges/madmatt-silverstripe-shibboleth/health.svg)](https://phpackages.com/packages/madmatt-silverstripe-shibboleth)
```

###  Alternatives

[onelogin/php-saml

PHP SAML Toolkit

1.3k44.0M107](/packages/onelogin-php-saml)[hslavich/oneloginsaml-bundle

OneLogin SAML Bundle for Symfony

1482.5M1](/packages/hslavich-oneloginsaml-bundle)[codegreencreative/laravel-samlidp

Make your PHP Laravel application an Identification Provider using SAML 2.0. This package allows you to implement your own Identification Provider (idP) using the SAML 2.0 standard to be used with supporting SAML 2.0 Service Providers (SP).

263763.5k1](/packages/codegreencreative-laravel-samlidp)[humanmade/wp-simple-saml

WordPress Simple SAML plugin

124284.7k2](/packages/humanmade-wp-simple-saml)[nbgrp/onelogin-saml-bundle

OneLogin SAML Symfony Bundle

551.2M](/packages/nbgrp-onelogin-saml-bundle)[scaler-tech/laravel-saml2

SAML2 Service Provider integration for Laravel applications, based on OneLogin toolkit

2737.5k](/packages/scaler-tech-laravel-saml2)

PHPackages © 2026

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