PHPackages                             nhujanen/aad-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. nhujanen/aad-sso

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

nhujanen/aad-sso
================

Stand-alone Azure AD SSO library

v1.0.1(2y ago)0101MITPHPPHP &gt;=5.6

Since Jul 21Pushed 2y ago1 watchersCompare

[ Source](https://github.com/wex/aad-sso)[ Packagist](https://packagist.org/packages/nhujanen/aad-sso)[ RSS](/packages/nhujanen-aad-sso/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (3)Used By (0)

Stand-alone Azure AD SSO for PHP 5.6+
=====================================

[](#stand-alone-azure-ad-sso-for-php-56)

Simple stand-alone library to handle Azure AD SSO flow.

- Tested with `PHP 5.6 - 8.1`
- `allow_url_fopen` must be `true` in `php.ini` to use HTTP requests.
- Requires `ext-openssl`.

License
-------

[](#license)

MIT License

Install
-------

[](#install)

You can use Composer:

```
composer require nhujanen/aad-sso

```

Example
-------

[](#example)

See `test/` for code examples.

You can run example with PHP's built-in web server:

```
foo@bar test]$ AAD_TENANT=foobar.com AAD_ID=00000000-0000-0000-0000-000000000000 AAD_SECRET=foo php -S localhost:8080 -t .

```

**Remember: you need to add `http://localhost:8080/auth.php` as valid Redirect URI.**

Create and configure AAD application
------------------------------------

[](#create-and-configure-aad-application)

Refer to [Register an application with the Microsoft identity platform](https://learn.microsoft.com/en-us/graph/auth-register-app-v2?view=graph-rest-1.0).

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community5

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

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

1026d ago

### Community

Maintainers

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

---

Tags

SSOazure-ad

### Embed Badge

![Health badge](/badges/nhujanen-aad-sso/health.svg)

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

###  Alternatives

[league/oauth2-client

OAuth 2.0 Client Library

3.8k118.6M1.2k](/packages/league-oauth2-client)[league/oauth1-client

OAuth 1.0 Client Library

99698.8M106](/packages/league-oauth1-client)[onelogin/php-saml

PHP SAML Toolkit

1.3k44.0M107](/packages/onelogin-php-saml)[thenetworg/oauth2-azure

Azure Active Directory OAuth 2.0 Client Provider for The PHP League OAuth2-Client

2509.6M48](/packages/thenetworg-oauth2-azure)[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)

PHPackages © 2026

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