PHPackages                             ahmed-ghiloubi/acl-bundle - 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. ahmed-ghiloubi/acl-bundle

ActiveSymfony-bundle[Authentication &amp; Authorization](/categories/authentication)

ahmed-ghiloubi/acl-bundle
=========================

Providing an easy way to work with the Symfony Security Acl.

4.0(6y ago)1200MITPHPPHP &gt;=7.2.0

Since Jan 8Pushed 6y agoCompare

[ Source](https://github.com/Ahmed-Ghiloubi/acl-bundle)[ Packagist](https://packagist.org/packages/ahmed-ghiloubi/acl-bundle)[ RSS](/packages/ahmed-ghiloubi-acl-bundle/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (9)Versions (6)Used By (0)

ChiliLabs AclBundle
===================

[](#chililabs-aclbundle)

###### Bundle for Symfony2 providing easy access to the complex ACL subsystem

[](#bundle-for-symfony2-providing-easy-access-to-the-complex-acl-subsystem)

[![Latest Stable Version](https://camo.githubusercontent.com/2e46b4329135613a8575ffaef963ed4bd485503a4148cbb1af47cfd2627bd1c8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f70726f6a6563742d612f61636c2d62756e646c652e7376673f7374796c653d666c6174266c6162656c3d737461626c65)](https://packagist.org/packages/project-a/acl-bundle)[![Total Downloads](https://camo.githubusercontent.com/c1ad03d2fd09f99aa63e3966933d3a22137477721ba5caf3de51383a121fef7a/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f70726f6a6563742d612f61636c2d62756e646c652e7376673f7374796c653d666c6174)](https://packagist.org/packages/project-a/acl-bundle)[![License](https://camo.githubusercontent.com/fa841e1be67366ca253d2af906f7ae532525eea6ea012a3acf114d60d6662964/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f70726f6a6563742d612f61636c2d62756e646c652e7376673f7374796c653d666c6174)](https://packagist.org/packages/project-a/acl-bundle)[![Build Status](https://camo.githubusercontent.com/79987650e3da090a4c91f27fb354598aab4ac9f96f6639f24043844c0bb3509e/68747470733a2f2f7365637572652e7472617669732d63692e6f72672f6368696c692d6c6162732f41636c42756e646c652e706e673f6272616e63683d6d6173746572)](http://travis-ci.org/chili-labs/AclBundle)[![Coverage Status](https://camo.githubusercontent.com/d79d19f6071a6bc2fb5a16c7ee78767ef9d60eaa61e5cba0172ddbe690a833d1/68747470733a2f2f696d672e736869656c64732e696f2f636f766572616c6c732f6368696c692d6c6162732f41636c42756e646c652e7376673f7374796c653d666c6174)](https://coveralls.io/r/chili-labs/AclBundle?branch=master)[![SensioLabsInsight](https://camo.githubusercontent.com/705620ea56366f197c39d05aecb22e6e8534adef74e842d391056eb56b47fb0a/68747470733a2f2f696e73696768742e73656e73696f6c6162732e636f6d2f70726f6a656374732f39643138656465302d346339612d343237612d386134612d3338343161623034643532642f6d696e692e706e67)](https://insight.sensiolabs.com/projects/9d18ede0-4c9a-427a-8a4a-3841ab04d52d)

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

[](#description)

This Symfony 2 Bundle provides an easy api to the Security/ACL component and an eventlistener for automatic ACL cleanup upon removal of domain objects. The installation is simple and by default does not change any behavior of your application.

Without this bundle you normally do this (taken from the [ACL docs](http://symfony.com/doc/current/cookbook/security/acl.html#creating-an-acl-and-adding-an-ace)):

```
// creating the ACL
$aclProvider = $container->get('security.acl.provider');
$objectIdentity = ObjectIdentity::fromDomainObject($domainObject);
$acl = $aclProvider->createAcl($objectIdentity);

// retrieving the security identity of the currently logged-in user
$tokenStorage = $container->get('security.token_storage');
$user = $tokenStorage->getToken()->getUser();
$securityIdentity = UserSecurityIdentity::fromAccount($user);

// grant owner access
$acl->insertObjectAce($securityIdentity, MaskBuilder::MASK_OWNER);
$aclProvider->updateAcl($acl);
```

With this bundle you can simplify it to:

```
$tokenStorage = $container->get('security.token_storage');
$user = $tokenStorage->getToken()->getUser();

$aclManager = $container->get('projecta_acl.manager');
$aclManager->manageObjectAces()
    ->grant($domainObject, MaskBuilder::MASK_OWNER, $user);
```

Documentation
-------------

[](#documentation)

The latest documentation can be found on [aclbundle.chililabs.org](http://aclbundle.chililabs.org/en/latest/).

Tests
-----

[](#tests)

To run the test suite, you need [composer](http://getcomposer.org).

```
$ composer install
$ phpunit

```

License
-------

[](#license)

ChiliLabs AclBundle is licensed under the MIT license.

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity62

Established project with proven stability

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

Total

5

Last Release

2218d ago

Major Versions

v1.1.0 → 4.02020-04-15

PHP version history (2 changes)v1.0.0-RC1PHP &gt;=5.3.0

4.0PHP &gt;=7.2.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/3d263635e6ad6d6bae7b31bbb43abe0becc9645c77e6978aa973bf208c14f44b?d=identicon)[ahmed.ghiloubi](/maintainers/ahmed.ghiloubi)

---

Top Contributors

[![sheeep](https://avatars.githubusercontent.com/u/607530?v=4)](https://github.com/sheeep "sheeep (88 commits)")[![danez](https://avatars.githubusercontent.com/u/231804?v=4)](https://github.com/danez "danez (66 commits)")[![bytehead](https://avatars.githubusercontent.com/u/754921?v=4)](https://github.com/bytehead "bytehead (35 commits)")[![ahmed-ghiloubi](https://avatars.githubusercontent.com/u/4644273?v=4)](https://github.com/ahmed-ghiloubi "ahmed-ghiloubi (2 commits)")[![cobrowserAlex](https://avatars.githubusercontent.com/u/10495775?v=4)](https://github.com/cobrowserAlex "cobrowserAlex (1 commits)")[![psturm](https://avatars.githubusercontent.com/u/6010640?v=4)](https://github.com/psturm "psturm (1 commits)")

---

Tags

securityaclsymfony4

### Embed Badge

![Health badge](/badges/ahmed-ghiloubi-acl-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/ahmed-ghiloubi-acl-bundle/health.svg)](https://phpackages.com/packages/ahmed-ghiloubi-acl-bundle)
```

###  Alternatives

[spatie/laravel-permission

Permission handling for Laravel 12 and up

12.9k89.8M1.0k](/packages/spatie-laravel-permission)[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[beatswitch/lock

A flexible, driver based Acl package for PHP 5.4+

870304.7k2](/packages/beatswitch-lock)[scheb/2fa

Two-factor authentication for Symfony applications (please use scheb/2fa-bundle to install)

578630.7k1](/packages/scheb-2fa)[oneup/acl-bundle

The missing link between Symfony`s Acl implementation and your application.

52106.8k](/packages/oneup-acl-bundle)[efficiently/authority-controller

AuthorityController is an PHP authorization library for Laravel 5 which restricts what resources a given user is allowed to access.

15533.2k](/packages/efficiently-authority-controller)

PHPackages © 2026

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