Audit: Log a command's payload as json

$data may be arbitrarily nested.

refs #3535

Signed-off-by: Eric Lippmann <eric.lippmann@icinga.com>
This commit is contained in:
Johannes Meyer 2018-07-20 13:24:45 +02:00 committed by Eric Lippmann
parent cfe6c7b065
commit dbfef34f6e
1 changed files with 2 additions and 5 deletions

View File

@ -12,6 +12,7 @@ use Icinga\Module\Monitoring\Command\Renderer\IcingaApiCommandRenderer;
use Icinga\Module\Monitoring\Exception\CommandTransportException;
use Icinga\Module\Monitoring\Exception\CurlException;
use Icinga\Module\Monitoring\Web\Rest\RestRequest;
use Icinga\Util\Json;
/**
* Command transport over Icinga 2's REST API
@ -198,11 +199,7 @@ class ApiCommandTransport implements CommandTransportInterface
);
$data = $command->getData();
$payload = [];
foreach ($data as $key => $value) {
$payload[] = "$key=$value";
}
$payload = implode(', ', $payload);
$payload = Json::encode($data);
AuditHook::logActivity(
'monitoring/command',
"Issued command {$command->getEndpoint()} with the following payload: $payload",