diff --git a/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml b/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml
index 9b323e2f5..02415ec19 100644
--- a/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml
+++ b/modules/monitoring/application/views/scripts/show/components/acknowledgement.phtml
@@ -22,7 +22,13 @@ if ($object->getType() === $object::TYPE_HOST) {
if ($object->acknowledged): ?>
= $this->translate('Acknowledged') ?> |
- = $removeAckForm ?> |
+
+
+ |
diff --git a/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php b/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php
index dd83f415b..c9ba70dca 100644
--- a/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php
+++ b/modules/monitoring/library/Monitoring/Web/Controller/MonitoredObjectController.php
@@ -67,11 +67,13 @@ abstract class MonitoredObjectController extends Controller
}
if ( ! in_array((int) $this->object->state, array(0, 99))) {
if ((bool) $this->object->acknowledged) {
- $removeAckForm = new RemoveAcknowledgementCommandForm();
- $removeAckForm
- ->setObjects($this->object)
- ->handleRequest();
- $this->view->removeAckForm = $removeAckForm;
+ if ($auth->hasPermission('monitoring/command/remove-acknowledgement')) {
+ $removeAckForm = new RemoveAcknowledgementCommandForm();
+ $removeAckForm
+ ->setObjects($this->object)
+ ->handleRequest();
+ $this->view->removeAckForm = $removeAckForm;
+ }
} else {
$ackForm = new AcknowledgeProblemCommandForm();
$ackForm