Laravel Packages

Access Management in Filament With the Shield Plugin

Published
Access Management in Filament With the Shield Plugin image

The Filament Shield package adds access management to your Filament panels, resources, pages, and widgets. It uses Spatie's Laravel Permissions package for the underlying user permissions. Once you install this package, you will add the HasRoles trait to your user model:

use Spatie\Permission\Traits\HasRoles;
 
class User extends Authenticatable
{
use HasRoles;
}

After that, running the shield:setup command will publish config and migrations, run the migrations, and configure your application for tenancy support if specified. Out of the box, Shield handles predefined permissions for Filament resources, and you can also add custom permissions.

Main Features

  • Complete Authorization Management
    • Resource Permissions
    • Page Permissions
    • Widget Permissions
    • Custom Permissions
  • Multi-tenancy Support
  • Easy Setup & Configuration
  • Best UI
  • Policy Generation
  • Translations Support

The package readme contains this package's documentation, and you can also view Shield's Filament plugin page for more details. Consult the laravel-permission documentation for more details on the underlying role/permissions in this package.

You can view the source code on GitHub.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

serpapi logo
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi

The latest

View all →
Cancel In-Flight Form Submissions in Inertia.js v3.7 image

Cancel In-Flight Form Submissions in Inertia.js v3.7

Read article
Laravel Starter Kits Now Ship with Vite+ image

Laravel Starter Kits Now Ship with Vite+

Read article
Pessimistic Locking in Laravel Eloquent with refreshForUpdate() image

Pessimistic Locking in Laravel Eloquent with refreshForUpdate()

Read article
Mask Query Bindings in Laravel Exception Messages image

Mask Query Bindings in Laravel Exception Messages

Read article
whereBinary(): Case-Sensitive MySQL Queries in Laravel image

whereBinary(): Case-Sensitive MySQL Queries in Laravel

Read article
Compile PHP to Native Binaries with TypePHP image

Compile PHP to Native Binaries with TypePHP

Read article