PHPackages                             pressbooks/pressbooks-cas-sso - 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. pressbooks/pressbooks-cas-sso

ActiveWordpress-plugin[Authentication &amp; Authorization](/categories/authentication)

pressbooks/pressbooks-cas-sso
=============================

CAS Single Sign-On integration for Pressbooks.

2.7.0(2mo ago)213.8k↓50%1[1 issues](https://github.com/pressbooks/pressbooks-cas-sso/issues)[8 PRs](https://github.com/pressbooks/pressbooks-cas-sso/pulls)GPL-3.0-or-laterPHPPHP ^8.1CI failing

Since Apr 26Pushed 1mo ago7 watchersCompare

[ Source](https://github.com/pressbooks/pressbooks-cas-sso)[ Packagist](https://packagist.org/packages/pressbooks/pressbooks-cas-sso)[ Docs](https://github.com/pressbooks/pressbooks-cas-sso)[ RSS](/packages/pressbooks-pressbooks-cas-sso/feed)WikiDiscussions dev Synced 1mo ago

READMEChangelog (10)Dependencies (11)Versions (51)Used By (0)

Pressbooks CAS Single Sign-On
=============================

[](#pressbooks-cas-single-sign-on)

Contributors: conner\_bw, greatislander Tags: pressbooks, sso, cas Requires at least: 6.5 Tested up to: 6.5

Stable tag: 2.7.0

License: GPLv3 or later License URI:

CAS Single Sign-On integration for Pressbooks.

Description
-----------

[](#description)

[![Packagist](https://camo.githubusercontent.com/94b6617ac85091428bc1bb6005ab81741fe439042b9103e4a823e50769c7d02b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7072657373626f6f6b732f7072657373626f6f6b732d6361732d73736f2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/pressbooks/pressbooks-cas-sso) [![GitHub release](https://camo.githubusercontent.com/244769ff59ce4026ab9f803038eb12c84813d58355db36d634450a810f9d0881/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f7072657373626f6f6b732f7072657373626f6f6b732d6361732d73736f2e7376673f7374796c653d666c61742d737175617265)](https://github.com/pressbooks/pressbooks-cas-sso/releases) [![Codecov](https://camo.githubusercontent.com/b78662df64fa478032fba22934e3b8ef8fc7d3572533516dc6ba0dc6984744ba/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f7072657373626f6f6b732f7072657373626f6f6b732d6361732d73736f2e7376673f7374796c653d666c61742d737175617265)](https://codecov.io/gh/pressbooks/pressbooks-cas-sso)

Plugin to integrate Pressbooks with [Central AuthenticationService (CAS)](http://en.wikipedia.org/wiki/Central_Authentication_Service) single sign-on architectures.

Users who attempt to login to Pressbooks are redirected to the central CAS sign-on screen. After the user’s credentials are verified, they are redirected back to the Pressbooks network. If we match a Pressbooks user by CAS username (stored in user\_meta table), the user is recognized as valid and allowed access. If no match, then try to match a Pressbooks user by email (and store a successful match in user\_meta table for next time). If the CAS user does not have an account in Pressbooks, a new user can be created, or access can be refused, depending on the configuration.

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

[](#installation)

```
composer require pressbooks/pressbooks-cas-sso

```

Or, download the latest version from the releases page and unzip it into your WordPress plugin directory:

Then, activate and configure the plugin at the Network level.

Read the integrations documentation for more info:

### Security Considerations

[](#security-considerations)

Set the `PB_CAS_CERT_PATH` environment variable to configure validation of the CAS server. Used by `CURLOPT_CAINFO` for peer and host verification:

```
putenv( 'PB_CAS_CERT_PATH=/path/to/cachain.pem' ); // Path to the CA chain that issued the CAS server certificate

```

### Advanced Configuration

[](#advanced-configuration)

The email can be filtered, example: `add_filter( 'pb_integrations_multidomain_email', function( $email, $uid, $plugin ) { /* Custom use case, return $email */ }, 10, 3 );`

Because this plugin uses the fabulous [apereo/phpCAS](https://github.com/apereo/phpCAS) library, [many other configuration variables can be tweaked](https://github.com/apereo/phpCAS/tree/master/docs/examples).

Screenshots
-----------

[](#screenshots)

[![Pressbooks CAS Administration.](screenshot-1.png)](screenshot-1.png)

### Changelog

[](#changelog)

Please see the [CHANGELOG](CHANGELOG.md) file for more information.

###  Health Score

57

—

FairBetter than 98% of packages

Maintenance79

Regular maintenance activity

Popularity29

Limited adoption so far

Community20

Small or concentrated contributor base

Maturity85

Battle-tested with a long release history

 Bus Factor2

2 contributors hold 50%+ of commits

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

Recently: every ~277 days

Total

20

Last Release

64d ago

Major Versions

0.4.1 → 1.0.02018-06-15

1.2.4 → 2.0.02022-09-13

PHP version history (6 changes)0.2.0PHP &gt;=7.0

1.1.0PHP &gt;=7.1

1.2.4PHP &gt;=7.4

2.1.0PHP ^7.4|8.0.\*

2.2.0PHP ^8.0

2.3.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/5617ca8d230381ad60c37324c68fff5d0b1866a51f47b97e707a84afd0f80ce5?d=identicon)[pressbooks-ops](/maintainers/pressbooks-ops)

---

Top Contributors

[![SteelWagstaff](https://avatars.githubusercontent.com/u/13485451?v=4)](https://github.com/SteelWagstaff "SteelWagstaff (115 commits)")[![dac514](https://avatars.githubusercontent.com/u/812192?v=4)](https://github.com/dac514 "dac514 (69 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (48 commits)")[![greatislander](https://avatars.githubusercontent.com/u/605361?v=4)](https://github.com/greatislander "greatislander (20 commits)")[![arzola](https://avatars.githubusercontent.com/u/4997549?v=4)](https://github.com/arzola "arzola (15 commits)")[![pressbooks-ops](https://avatars.githubusercontent.com/u/66340483?v=4)](https://github.com/pressbooks-ops "pressbooks-ops (10 commits)")[![ho-man-chan](https://avatars.githubusercontent.com/u/21694293?v=4)](https://github.com/ho-man-chan "ho-man-chan (6 commits)")[![fdalcin](https://avatars.githubusercontent.com/u/1761690?v=4)](https://github.com/fdalcin "fdalcin (5 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (3 commits)")[![transifex-integration[bot]](https://avatars.githubusercontent.com/in/18568?v=4)](https://github.com/transifex-integration[bot] "transifex-integration[bot] (3 commits)")[![richard015ar](https://avatars.githubusercontent.com/u/13248424?v=4)](https://github.com/richard015ar "richard015ar (2 commits)")[![cmurtagh](https://avatars.githubusercontent.com/u/952104?v=4)](https://github.com/cmurtagh "cmurtagh (2 commits)")[![dannylonglegs](https://avatars.githubusercontent.com/u/21149722?v=4)](https://github.com/dannylonglegs "dannylonglegs (1 commits)")

---

Tags

caspressbookspressbooks-pluginssopublishingebookswebbooks

### Embed Badge

![Health badge](/badges/pressbooks-pressbooks-cas-sso/health.svg)

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

###  Alternatives

[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

44643.1k1](/packages/pressbooks-pressbooks)[markstory/acl_extras

Additional tools for managing DB ACL in CakePHP applications.

155311.0k](/packages/markstory-acl-extras)[rainlab/user-plugin

User plugin for October CMS

11954.3k13](/packages/rainlab-user-plugin)[stuttter/wp-user-signups

The best way to manage user &amp; site sign-ups in WordPress

46208.9k5](/packages/stuttter-wp-user-signups)[winter/wn-user-plugin

User plugin for Winter CMS

1233.5k13](/packages/winter-wn-user-plugin)[pressbooks/pressbooks-aldine

Aldine is the default theme for the home page of Pressbooks networks. It is named for the Aldine Press, founded by Aldus Manutius in 1494, who is regarded by many as the world’s first publisher.

114.3k](/packages/pressbooks-pressbooks-aldine)

PHPackages © 2026

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