Looking to hire Laravel developers? Try LaraJobs

laravel-acl maintained by mecene

Description
Gestion des rôles et permissions pour Laravel 11/12
Last update
2026/02/21 12:52 (v1.1.8)
License
Links
Downloads
4

Comments
comments powered by Disqus

Laravel ACL

Latest Version License

Gestion des rôles et permissions pour Laravel 11/12 avec interface d'administration intégrée.

Installation

composer require MecenePhrygien/laravel-acl
php artisan vendor:publish --tag=acl-config
php artisan vendor:publish --tag=acl-migrations
php artisan migrate

Configuration rapide

// app/Models/User.php
use MecenePhrygien\LaravelAcl\Traits\HasRolesAndPermissions;
use MecenePhrygien\LaravelAcl\Contracts\HasAcl;

class User extends Authenticatable implements HasAcl
{
    use HasRolesAndPermissions;
}

Interface d'administration

Accessible sur /acl après connexion :

URL Description
/acl Dashboard
/acl/roles Gestion des rôles
/acl/permissions Gestion permissions
/acl/users Utilisateurs
/acl/affectation Affecter des rôles
/acl/audit Journal d'audit

Personnaliser dans config/acl.php :

'ui' => [
    'enabled'    => true,
    'prefix'     => 'acl',
    'middleware' => ['web', 'auth', 'role:admin'],
],

Utilisation

$user->assignRole('admin');
$user->removeRole('vendor');
$user->syncRoles(['vendor', 'editor']);

$user->hasRole('admin');                    // true
$user->hasAnyRole(['admin', 'vendor']);     // true
$user->hasPermission('products.edit');      // true
$user->hasAllPermissions(['p1', 'p2']);     // true

Middlewares

Route::middleware('role:admin')->group(...);
Route::middleware('permission:products.edit')->group(...);
Route::middleware('role_or_permission:admin,orders.view')->group(...);