Получить лог безопасности

Возвращает лог безопасности.

Запрос

HTTP Запрос

GET /node/api/users/security/log

Права

read-security-log

Параметры запроса

Параметр Тип Описание

from

Integer

От какой даты искать записи.

limit

Integer

Максимальное количество возвращаемых записей.

skip

Integer

Сколько записей с начала списка нужно пропустить.

to

Integer

До какой даты искать записи.

filter

String

Дополнительный фильтр для полей данных. Записывается в формате url-encoded JSON. У фильтра следующая структура: "field": "value"

Тело запроса

Тело запроса пустое.

Ответ

Ответ содержит массив записей лога безопасности. Подробная информация о модели доступна в статье Лог безопасности.

Примеры

Запрос

  • Bash

  • JavaScript

  • NodeJS

  • Python

login=<...>
password=<...>
saymon_hostname=<...>
userId=<...>
url=https://$saymon_hostname/node/api/users/security/log

curl -X GET $url -u $login:$password \
    -G --data-urlencode "userId=$userId"
let login = <...>
let password = <...>
let saymonHostname = <...>
let userId = <...>
let path = "/node/api/users/security/log";
let auth = "Basic " + btoa(login + ":" + password);

let headers = new Headers();
headers.append("Authorization", auth);

let requestOptions = {
    method: "GET",
    headers: headers
};

fetch(saymonHostname + path, requestOptions)
    .then(response => response.text())
    .then(result => console.log(result))
    .catch(error => console.log("error", error));
const http = require("http");

let login = <...>
let password = <...>
let saymonHostname = <...>
let userId = <...>
let path = "/node/api/users/security/log";
let auth = "Basic " + Buffer.from(login + ":" + password).toString("base64");

let options = {
    "method": "GET",
    "hostname": saymonHostname,
    "headers": {
        "Authorization": auth
    },
    "path": path
};

let req = http.request(options, function (res) {
    let chunks = [];

    res.on("data", function (chunk) {
        chunks.push(chunk);
    });

    res.on("end", function (chunk) {
        let body = Buffer.concat(chunks);
        console.log(body.toString());
    });

    res.on("error", function (error) {
        console.error(error);
    });
});

req.end();
import requests

login = <...>
password = <...>
saymon_hostname = <...>
user_id = <...>
url = "https://" + saymon_hostname + "/node/api/users/security/log"

response = requests.request("GET", url, auth=(login, password))
print(response.text)

Ответ

[
    {
        "level": "error",
        "severity": "8",
        "eventClassId": "AAF",
        "eventDescription": "Authorization error",
        "host": "HOST-SRV",
        "message": {
            "remoteAddress": "192.168.1.101",
            "login": "demo",
            "message": "Wrong password",
            "connection": {
                "localAddress": "::ffff:127.0.0.1",
                "localPort": 8090,
                "localHost": "192.168.1.101",
                "remoteAddress": "192.168.1.101",
                "remoteHost": "192.168.1.101",
                "request": {
                    "request": "GET /api/states",
                    "hostname": "192.168.1.101",
                    "userAgent": "Apache-HttpClient/5.4-alpha2 (Java/17.0.10)"
                }
            }
        },
        "extra": {
            "source": "saymon-log-kafka.LOG_FAULTS",
            "channel": "faults"
        },
        "timestamp": "2024-10-01T09:33:30.695Z",
        "id": "66fbc1ebcb1c340010453ff7"
    },
    ...
]

Смотрите также