With “Edit Alerts” added to a role, users with this role are not able to ACK alerts, they get “This action is unauthorized.” when trying to ACK an alert, however, the ACK button is visible. I tried moving them back to “global-read”, but that completely removes the ACK button (I think this is new on the latest release). I am using RADIUS authentication, and my role is applied via:
Access Type = ACCESS_ACCEPT
Filter-ID = librenms_role_network-services-user
Am I missing something?
Thanks again for everything you do!
Edit: On a different LibreNMS instance I created a local user and applied the same role, same issue. So its not related to radius authentication.
Chris
1 Like
I am seeing the same behavior. Even with all available permissions selected (simulating ADMIN) Clicking the Acknowledge button results in no action.
Version: 26.7.0-dev.7+8a5a1b7de - Tue Jun 16 2026 15:36:54 GMT-0700
Here is a fix I can confirm works, would love for a dev to step in and review this:
librenms@nms:~/app/Policies$ pwd
/opt/librenms/app/Policies
librenms@nms:~/app/Policies$ diff AlertPolicy.php.orig AlertPolicy.php
55a56,58
if ($this->hasGlobalPermission($user, 'viewAll')) {
return true;
}
Here is a diff -y, showing you some context, original on the left, fixed on the right:
/** /**
* Determine whether the user can update the model. * Determine whether the user can update the model.
*/ */
public function update(User $user, Alert $alert): bool public function update(User $user, Alert $alert): bool
{ {
> if ($this->hasGlobalPermission($user, 'viewAll')) {
> return true;
> }
return $this->hasGlobalPermission($user, 'update') return $this->hasGlobalPermission($user, 'update')
&& Permissions::canAccessDevice($alert->device_id && Permissions::canAccessDevice($alert->device_id
} }
Then:
php /opt/librenms/artisan cache:clear