laravel-acl maintained by mecene
Description
Gestion des rôles et permissions pour Laravel 11/12
Author
Last update
2026/02/21 12:52
(v1.1.8)
License
Downloads
4
Tags
Laravel ACL
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(...);