PHPackages                             ajgl/session-expiration - 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. [Security](/categories/security)
4. /
5. ajgl/session-expiration

Abandoned → [ajgl/session-expiration](/?search=ajgl%2Fsession-expiration)Library[Security](/categories/security)

ajgl/session-expiration
=======================

Symfony security firewall to block idle sessions

0.1.2(11y ago)08162MITPHPPHP &gt;=5.3.3

Since Jan 7Pushed 11y ago1 watchersCompare

[ Source](https://github.com/ajgarlag/AjglSessionExpiration)[ Packagist](https://packagist.org/packages/ajgl/session-expiration)[ Docs](https://github.com/ajgarlag/AjglSessionExpiration)[ RSS](/packages/ajgl-session-expiration/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (2)Versions (4)Used By (2)

AjglSessionExpiration
=====================

[](#ajglsessionexpiration)

The AjglSessionExpiration component allows you to block idle Symfony sessions.

PR Reference
------------

[](#pr-reference)

This feature has been submitted to the Symfony project in the [PR #12807](https://github.com/symfony/symfony/pull/12807).

All your feedback and contributions to this repository will help me to improve the referenced PR.

Usage
-----

[](#usage)

You have to subscribe the `SessionExpirationListener` to the `kernel.response`event of your application HTTP kernel.

Symfony Bundle
--------------

[](#symfony-bundle)

If you need to integrate this library into your Symfony Framework app, you can install the [AjglSessionExpirationBundle](https://github.com/ajgarlag/AjglSessionExpirationBundle)

License
-------

[](#license)

This component is under the MIT license. See the complete license in the LICENSE file.

Badges
------

[](#badges)

- **Travis CI**: [![Build Status](https://camo.githubusercontent.com/537ced015e3d42f2d66767e3726ef996768facbdf2b3aff4abae7483ea2f5bc3/68747470733a2f2f7472617669732d63692e6f72672f616a6761726c61672f416a676c53657373696f6e45787069726174696f6e2e706e673f6272616e63683d6d6173746572)](https://travis-ci.org/ajgarlag/AjglSessionExpiration)
- **Poser Latest Stable Version:** [![Latest Stable Version](https://camo.githubusercontent.com/cf90f0d2a6667334da6e46f54162e0aa3166e51e435efa029496d5ebcb8236fb/68747470733a2f2f706f7365722e707567782e6f72672f616a676c2f73657373696f6e2d65787069726174696f6e2f762f737461626c652e706e67)](https://packagist.org/packages/ajgl/session-expiration)
- **Poser Latest Unstable Version** [![Latest Unstable Version](https://camo.githubusercontent.com/f7deb0becfc09f12478fd7b5d2af7f6ed000d7f9e4d9c91cbbcb999e203d447d/68747470733a2f2f706f7365722e707567782e6f72672f616a676c2f73657373696f6e2d65787069726174696f6e2f762f756e737461626c652e706e67)](https://packagist.org/packages/ajgl/session-expiration)
- **Poser Total Downloads** [![Total Downloads](https://camo.githubusercontent.com/4d637ff01da948b92de255bad0312a1ca58a36abeacc9e54aa617a9b2adc4b8e/68747470733a2f2f706f7365722e707567782e6f72672f616a676c2f73657373696f6e2d65787069726174696f6e2f646f776e6c6f6164732e706e67)](https://packagist.org/packages/ajgl/session-expiration)
- **Poser Monthly Downloads** [![Montly Downloads](https://camo.githubusercontent.com/08bd5515b7c6cdd162d6c39f4fdbbcd1532471a051e87c28b48d020367db71d0/68747470733a2f2f706f7365722e707567782e6f72672f616a676c2f73657373696f6e2d65787069726174696f6e2f642f6d6f6e74686c792e706e67)](https://packagist.org/packages/ajgl/session-expiration)
- **Poser Daily Downloads** [![Daily Downloads](https://camo.githubusercontent.com/0dea15372685f56222a11cb6518602f206a0fe9232aac2dd4ee0126021ec4660/68747470733a2f2f706f7365722e707567782e6f72672f616a676c2f73657373696f6e2d65787069726174696f6e2f642f6461696c792e706e67)](https://packagist.org/packages/ajgl/session-expiration)
- **Poser License** [![License](https://camo.githubusercontent.com/a6307774b5b91a9c5dfc7ca3e463d599433caae100e5cc0e385c21a66cb34175/68747470733a2f2f706f7365722e707567782e6f72672f616a676c2f73657373696f6e2d65787069726174696f6e2f6c6963656e73652e706e67)](https://packagist.org/packages/ajgl/session-expiration)
- **Scrutinizer Quality** [![Scrutinizer Code Quality](https://camo.githubusercontent.com/e3f28c13d6cbb3f2464b1388be6f11fbf9c5c567839c640a798022147176563c/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f616a6761726c61672f416a676c53657373696f6e45787069726174696f6e2f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/ajgarlag/AjglSessionExpiration/?branch=master)
- **Scrutinizer Code Coverage** [![Code Coverage](https://camo.githubusercontent.com/d7585e9de4c82a4f2a911dfff6735fb8abc9cc49445187101d5f95dc1d698b4b/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f616a6761726c61672f416a676c53657373696f6e45787069726174696f6e2f6261646765732f636f7665726167652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/ajgarlag/AjglSessionExpiration/?branch=master)
- **SensionLabs Insight Quality** [![SensioLabsInsight](https://camo.githubusercontent.com/a8386b50160bc6aec607ad9d44663c6240d7e146d0de51acc3a525d2141d0e7f/68747470733a2f2f696e73696768742e73656e73696f6c6162732e636f6d2f70726f6a656374732f65383332303364322d633431362d346333622d616261662d3439353464633835343262652f6d696e692e706e67)](https://insight.sensiolabs.com/projects/e83203d2-c416-4c3b-abaf-4954dc8542be)
- **VersionEye Dependency Status** [![Dependency Status](https://camo.githubusercontent.com/6e84ca67810d726fd71e0a30991e472d8d289371e71d3d910509d225de76274c/68747470733a2f2f7777772e76657273696f6e6579652e636f6d2f7068702f616a676c3a73657373696f6e2d65787069726174696f6e2f6465762d6d61737465722f62616467652e706e67)](https://www.versioneye.com/php/ajgl:session-expiration/dev-master)

About
-----

[](#about)

AjglSessionExpiration is an [ajgarlag](http://aj.garcialagar.es) initiative.

Reporting an issue or a feature request
---------------------------------------

[](#reporting-an-issue-or-a-feature-request)

Issues and feature requests are tracked in the [Github issue tracker](https://github.com/ajgarlag/AjglSessionExpiration/issues).

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity50

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

Total

3

Last Release

4064d ago

### Community

Maintainers

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

---

Top Contributors

[![ajgarlag](https://avatars.githubusercontent.com/u/388184?v=4)](https://github.com/ajgarlag "ajgarlag (15 commits)")

---

Tags

symfonysecuritysessionexpirationidle

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ajgl-session-expiration/health.svg)

```
[![Health](https://phpackages.com/badges/ajgl-session-expiration/health.svg)](https://phpackages.com/packages/ajgl-session-expiration)
```

###  Alternatives

[gregwar/captcha-bundle

Captcha bundle

3524.7M32](/packages/gregwar-captcha-bundle)[paragonie/anti-csrf

Paragon Initiative's Anti-CSRF Security Library

307200.6k5](/packages/paragonie-anti-csrf)[rezzza/security-bundle

Signed requests check

1753.6k](/packages/rezzza-security-bundle)

PHPackages © 2026

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