PHPackages                             leesherwood/ejabberd-php-auth - 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. leesherwood/ejabberd-php-auth

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

leesherwood/ejabberd-php-auth
=============================

ejabberd external authentication with PHP

1.1.0(10y ago)77112MITPHPPHP &gt;=5.5.0

Since Apr 5Pushed 10y ago3 watchersCompare

[ Source](https://github.com/leesherwood/ejabberd-php-auth)[ Packagist](https://packagist.org/packages/leesherwood/ejabberd-php-auth)[ RSS](/packages/leesherwood-ejabberd-php-auth/feed)WikiDiscussions master Synced today

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

\##Ejabberd External Authentication (PHP)

This library provides a convenient way to customise the ejabberd authentication module `extauth_program`.

#### Installation (via composer)

[](#installation-via-composer)

Run this:

```
composer require leesherwood/ejabberd-php-auth:~1.1

```

or add this to your composer.json

```
"leesherwood/ejabberd-php-auth":"~1.1"

```

#### Installation (other)

[](#installation-other)

Download a zip, copy and paste the raw files, whatever you like :\]

\###The Basics This library implements a service and command pattern which acts as the interface between ejabberd and your custom auth solution. All you need to do is bootstrap the AuthenticationService (see examples) and create your CommandExecutor following the CommandExecutorInterface contract.

\###Command Executors This is what you create to implement your custom solution. You can have it connect to a database, look at a flat file such as a `.htpasswd`, send a request to another service, or pretty much anything else you can think of, this library simply provides the scaffolding.

\###Command Executor Collections This is a special command executor that allows you to register multiple command executors. It complies with the same interface as a normal command executor so you can layer these up as much as you need to (i.e. you can add an entire collection of commands to another collection).

Collections can be set to two requirements.

- `REQUIRE_ALL`: Is like an `AND`, all commands registers in that collection must return true for true to be the final output.
- `REQUIRE_ANY`: Is like an `OR`, the first command that returns true will be accepted as the final output.

These can be mixed if layering up collections, so you could have a business requirement that a user exists in 1 of 3 databases, plus be in a whitelist txt file. You would have a database command collection set to `REQUIRE_ANY` (OR), and your main collection (where you add the single whitelist cmd + the database collection) set to `REQUIRE_ALL` (AND).

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity20

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity59

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

Total

2

Last Release

3724d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1732877?v=4)[Lee Sherwood](/maintainers/leesherwood)[@leesherwood](https://github.com/leesherwood)

---

Top Contributors

[![leesherwood](https://avatars.githubusercontent.com/u/1732877?v=4)](https://github.com/leesherwood "leesherwood (12 commits)")

---

Tags

xmppejabberdejabberext\_auth

### Embed Badge

![Health badge](/badges/leesherwood-ejabberd-php-auth/health.svg)

```
[![Health](https://phpackages.com/badges/leesherwood-ejabberd-php-auth/health.svg)](https://phpackages.com/packages/leesherwood-ejabberd-php-auth)
```

###  Alternatives

[google/auth

Google Auth Library for PHP

1.4k286.7M205](/packages/google-auth)[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.6k38.2k](/packages/matomo-matomo)[simplesamlphp/simplesamlphp

A PHP implementation of a SAML 2.0 service provider and identity provider.

1.1k12.8M212](/packages/simplesamlphp-simplesamlphp)[simplesamlphp/saml2

SAML2 PHP library from SimpleSAMLphp

30418.0M41](/packages/simplesamlphp-saml2)[web-auth/webauthn-lib

FIDO2/Webauthn Support For PHP

1237.8M121](/packages/web-auth-webauthn-lib)[web-auth/webauthn-framework

FIDO2/Webauthn library for PHP and Symfony Bundle.

51390.8k3](/packages/web-auth-webauthn-framework)

PHPackages © 2026

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