waguilar33/filament-guardian
Filament Guardian is a Laravel/Filament plugin for managing roles and permissions in your admin panel. It offers a clean UI to assign roles, define permissions, and protect resources, making authorization simple and maintainable.
Attach:Role could self-assign the super-admin role and inherit a full Gate bypass; Detach:Role could strip every super admin). This is a decision input for upgrade prioritization, not just a feature toggle — treat it as a security patch on your roadmap and schedule it with the same urgency as a CVE.RolePolicy returns. That constrains "who can grant god-mode" to a small, auditable group, which is the right default for most orgs and a defensible answer in security reviews.Consider it when:
Gate) as an intentional, documented part of your access model, with the guarantee that only super admins can add or remove super admins.Look elsewhere when:
Upgrade-specific criteria: this is a behavior change, not purely additive. Non-super-admin users who previously managed super-admin membership from the Users tab lose that ability. Before upgrading, identify any workflow, runbook, or support process that relies on a delegate granting or revoking super-admin — those must move to a super-admin actor or be redesigned.
For executives: This is a mature, low-cost authorization package for our Laravel admin tooling — it's the difference between building and maintaining a role-management system ourselves and adopting one that's already hardened by a community. The latest release fixes a genuine security flaw: previously, a user with modest role-assignment rights could promote themselves to super admin and bypass every permission check in the application. That's now closed. The trade-off is one deliberate restriction — only super admins can grant or revoke super-admin — which is the behavior security reviewers expect. Recommendation: adopt, and treat the upgrade to v1.14.0 as a priority patch rather than a routine dependency bump.
For engineering: Security patch plus a scoped behavior change. Super-admin add/remove is now gated on being a super admin, enforced in the UI independent of RolePolicy; all other roles continue to honor your policy unchanged. Two action items: (1) upgrade and confirm the version is pinned forward, (2) grep your seeders, tests, and any admin runbooks for flows where a non-super-admin attaches or detaches the super-admin role — those break by design. Worth a line in the changelog we surface to internal admins, since a few people will find a button missing and should know why. Credit to the reporter; the fix is narrow and doesn't add migration or config surface.
How can I help you explore Laravel packages today?