Управление правилами трафика
Last updated
Was this helpful?
Last updated
Was this helpful?
API правил трафика Ideco Center описано в статье .
Длина комментариев (comment
) при API-запросах ограничена 255 символами.
GET /firewall/status
Ответ на успешный запрос:
[
{
"name": "rules-in-kernel",
"status": "active" | "activating" | "deactivating" | "failed" | "inactive" | "reloading",
"msg": [ "string" ]
},
{
"msg": [ "string" ],
"status": "active",
"name": "auto-snat"
}
]
msg
- список строк, поясняющих текущее состояние.
GET /firewall/state
Ответ на успешный запрос:
{
"enabled": "boolean"
}
enabled
- опция раздела Файрвол: true
- включена, false
- выключена.
GET /firewall/settings
Ответ на успешный запрос:
{
"automatic_snat_enabled": "boolean",
"log_mode": "nothing" | "all" | "selected",
"log_actions": [ "accept" | "drop" | "dnat" | "snat" | "mark_log" | "mark_not_log" ]
}
automatic_snat_enabled
- включение автоматического SNAT: true
- включен, false
- выключен;
log_mode
- режим логирования;
log_actions
- события, которые будут логироваться.
PUT /firewall/settings
Json-тело запроса:
{
"automatic_snat_enabled": "boolean",
"log_mode": "nothing" | "all" | "selected",
"log_actions": [ "accept" | "drop" | "dnat" | "snat" | "mark_log" | "mark_not_log" ]
}
automatic_snat_enabled
- включение автоматического SNAT: true
- включен, false
- выключен;
log_mode
- режим логирования;
log_actions
- события, которые будут логироваться.
Ответ на успешный запрос: 200 ОК
GET /firewall/rules/forward
- раздел FORWARD;
GET /firewall/rules/input
- раздел INPUT.
Ответ на успешный запрос:
{
"id": "integer",
"parent_id": "string",
"enabled": "boolean",
"protocol": "string",
"source_addresses": [ "string" ],
"source_addresses_negate": "boolean",
"source_ports": [ "string" ],
"incoming_interface": "string",
"destination_addresses": [ "string" ],
"destination_addresses_negate": "boolean",
"destination_ports": [ "string" ],
"outgoing_interface": "string",
"hip_profiles": [ "string" ],
"dpi_profile": "string",
"dpi_enabled": "boolean",
"ips_profile": "string",
"ips_enabled": "boolean",
"timetable": [ "string" ],
"comment": "string",
"action": "accept" | "drop"
}
id
- идентификатор правила.
parent_id
- идентификатор группы в Ideco Center, в которую входит сервер, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
enabled
- если true
, то правило включено, false
- выключено;
protocol
- протокол;
source_addresses
- адрес источника;
source_addresses_negate
- инвертировать адрес источника;
source_ports
- порты источников, список идентификаторов алиасов;
incoming_interface
- зона источника;
destination_addresses
- адрес назначения;
destination_addresses_negate
- инвертировать адрес назначения;
destination_ports
- порты назначения;
outgoing_interface
- зона назначения;
hip_profiles
- HIP-профили;
dpi_profile
- строка в формате UUID, идентификатор профиля DPI. Не может быть пустой строкой, если dpi_enabled
= true
;
dpi_enabled
- если true
, то обработка с помощью модуля Контроль приложений включена, false
- выключена;
ips_profile
- строка в формате UUID, идентификатор профиля IPS. Не может быть пустой строкой, если ips_enabled
= true
;
ips_enabled
- если true
, то обработка с помощью модуля Предотвращение вторжений включена, false
- выключена;
timetable
- время действия;
comment
- комментарий, может быть пустым;
action
- действие:
accept
- разрешить;
drop
- запретить.
GET /firewall/rules/dnat
Ответ на успешный запрос:
{
"id": "integer",
"parent_id": "string",
"enabled": "boolean",
"protocol": "string",
"source_addresses": [ "string" ],
"source_addresses_negate": "boolean",
"source_ports": [ "string" ],
"incoming_interface": "string",
"destination_addresses": [ "string" ],
"destination_addresses_negate": "boolean",
"destination_ports": [ "string" ],
"timetable": [ "string" ],
"comment": "string",
"action": "accept" | "dnat",
"change_destination_address": "null" | "string",
"change_destination_port": "null" | "string"
}
id
- идентификатор правила.
parent_id
- идентификатор группы в Ideco Center, в которую входит сервер, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
enabled
- если true
, то правило включено, false
- выключено;
protocol
- протокол;
source_addresses
- адрес источника;
source_addresses_negate
- инвертировать адрес источника;
source_ports
- порты источников, список идентификаторов алиасов;
incoming_interface
- зона источника;
destination_addresses
- адрес назначения;
destination_addresses_negate
- инвертировать адрес назначения;
destination_ports
- порты назначения;
timetable
- время действия;
comment
- комментарий, может быть пустым;
action
- действие:
accept
- разрешить;
dnat
- производить DNAT.
change_destination_address
- IP-адрес или диапазон IP-адресов для замены назначения, или null
, если action
= accept
;
change_destination_port
- порт или диапазон портов для замены значения, или null
, если action
= accept
.
GET /firewall/rules/snat
Ответ на успешный запрос:
{
"id": "integer",
"parent_id": "string",
"enabled": "boolean",
"protocol": "string",
"source_addresses": [ "string" ],
"source_addresses_negate": "boolean",
"source_ports": [ "string" ],
"destination_addresses": [ "string" ],
"destination_addresses_negate": "boolean",
"destination_ports": [ "string" ],
"outgoing_interface": "string",
"timetable": [ "string" ],
"comment": "string",
"action": "accept" | "snat",
"change_source_address": "null" | "string"
}
id
- идентификатор правила.
parent_id
- идентификатор группы в Ideco Center, в которую входит сервер, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
enabled
- если true
, то правило включено, false
- выключено;
protocol
- протокол;
source_addresses
- адрес источника;
source_addresses_negate
- инвертировать адрес источника;
source_ports
- порты источников, список идентификаторов алиасов;
destination_addresses
- адрес назначения;
destination_addresses_negate
- инвертировать адрес назначения;
destination_ports
- порты назначения;
outgoing_interface
- зона назначения;
timetable
- время действия;
action
- действие:
accept
- разрешить;
snat
- производить SNAT.
change_destination_address
- IP-адрес для замены источника, или null
, если action
= accept
.
GET /firewall/rules/log
Ответ на успешный запрос:
{
"id": "integer",
"parent_id": "string",
"enabled": "boolean",
"protocol": "string",
"source_addresses": [ "string" ],
"source_addresses_negate": "boolean",
"source_ports": [ "string" ],
"incoming_interface": "string",
"destination_addresses": [ "string" ],
"destination_addresses_negate": "boolean",
"destination_ports": [ "string" ],
"outgoing_interface": "string",
"timetable": [ "string" ],
"comment": "string",
"action": "mark_log"
}
id
- идентификатор правила.
parent_id
- идентификатор группы в Ideco Center, в которую входит сервер, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
enabled
- если true
, то правило включено, false
- выключено;
protocol
- протокол;
source_addresses
- адрес источника;
source_addresses_negate
- инвертировать адрес источника;
source_ports
- порты источников, список идентификаторов алиасов;
incoming_interface
- зона источника;
destination_addresses
- адрес назначения;
destination_addresses_negate
- инвертировать адрес назначения;
destination_ports
- порты назначения;
outgoing_interface
- зона назначения;
hip_profiles
- HIP-профили;
dpi_profile
- строка в формате UUID, идентификатор профиля DPI. Не может быть пустой строкой, если dpi_enabled
= true
;
dpi_enabled
- если true
, то обработка с помощью модуля Контроль приложений включена, false
- выключена;
ips_profile
- строка в формате UUID, идентификатор профиля IPS. Не может быть пустой строкой, если ips_enabled
= true
;
ips_enabled
- если true
, то обработка с помощью модуля Предотвращение вторжений включена, false
- выключена;
timetable
- время действия;
comment
- комментарий, может быть пустым;
action
- действие:
accept
- разрешить;
drop
- запретить.
POST /firewall/rules/forward?anchor_item_id=<id правила>&insert_after={true|false}
- раздел FORWARD;
POST /firewall/rules/input?anchor_item_id=<id правила>&insert_after={true|false}
- раздел INPUT;
POST /firewall/rules/dnat?anchor_item_id=<id правила>&insert_after={true|false}
- раздел DNAT;
POST /firewall/rules/snat?anchor_item_id=<id правила>&insert_after={true|false}
- раздел SNAT;
POST /firewall/rules/log?anchor_item_id=<id правила>&insert_after={true|false}
- раздел Логирование.
anchor_item_id
- идентификатор правила, ниже или выше которого нужно создать новое. Если отсутствует, то новое правило будет добавлено в конец таблицы;
insert_after
- вставка до или после. Если значение true
или отсутствует, то новое правило будет добавлено сразу после указанного в anchor_item_id
. Если false
- на месте указанного в anchor_item_id
.
Ответ на успешный запрос:
{
"id": "integer"
}
id
- идентификатор созданного правила.
PUT /firewall/rules/forward/<id правила>
- раздел FORWARD;
PUT /firewall/rules/input/<id правила>
- раздел INPUT;
PUT /firewall/rules/dnat/<id правила>
- раздел DNAT;
PUT /firewall/rules/snat/<id правила>
- раздел SNAT;
PUT /firewall/rules/log/<id правила>
- раздел Логирование.
Ответ на успешный запрос: 200 ОК
PATCH /firewall/rules/forward/move
- раздел FORWARD;
PATCH /firewall/rules/input/move
- раздел INPUT;
PATCH /firewall/rules/dnat/move
- раздел DNAT;
PATCH /firewall/rules/snat/move
- раздел SNAT;
PATCH /firewall/rules/log/move
- раздел Логирование.
Json-тело запроса:
{
"params": {
"id": "integer",
"anchor_item_id": "integer",
"insert_after": "boolean"
}
}
id
- идентификатор перемещаемого правила;
anchor_item_id
- идентификатор правила, ниже или выше которого нужно поместить перемещаемое правило;
insert_after
- вставка до или после. Если true
, то вставить правило сразу после указанного в anchor_item_id
, если false
- на месте указанного в anchor_item_id
.
DELETE /firewall/rules/forward/<id правила>
- раздел FORWARD;
DELETE /firewall/rules/input/<id правила>
- раздел INPUT;
DELETE /firewall/rules/dnat/<id правила>
- раздел DNAT;
DELETE /firewall/rules/snat/<id правила>
- раздел SNAT;
DELETE /firewall/rules/log/<id правила>
- раздел Логирование.
Ответ на успешный запрос: 200 ОК
GET /firewall/watch
Ответ на успешный запрос:
{
"enabled": "boolean"
}
enabled
- если true
, то счетчик включен, если false
- выключен.
PUT /firewall/watch
Json-тело запроса:
{
"enabled": "boolean"
}
enabled
- true
для включения, false
для выключения.
Ответ на успешный запрос: 200 ОК
GET /firewall/counters/forward
- раздел FORWARD;
GET /firewall/counters/input
- раздел INPUT;
GET /firewall/counters/dnat
- раздел DNAT;
GET /firewall/counters/snat
- раздел SNAT;
GET /firewall/rules/log
- раздел Логирование.
Ответ на успешный запрос:
[
{
"id": "integer",
"packets": "integer"
},
...
]
id
- идентификатор правила;
packets
- количество сработок правила.
GET /application_control_backend/rules
Ответ на успешный запрос:
[
{
"action": "drop" | "accept",
"aliases": [ "string" ],
"comment": "string",
"enabled": "boolean",
"name": "string",
"parent_id": "string",
"protocols": [ "string" ],
"id": "integer"
},
...
]
action
- действие, применяемое к правилу;
comment
- комментарий правила;
enabled
- статус правила: true
- включено, false
- выключено;
name
- имя правила;
parent_id
- идентификатор родительской группы серверов;
protocols
- список протоколов;
id
- идентификатор правила.
POST /application_control_backend/rules
Json-тело запроса:
{
"parent_id": "string",
"name": "string",
"action": "drop" | "accept",
"comment": "string",
"aliases": [ "string" ],
"protocols": [ "string" ],
"enabled": "boolean"
}
parent_id
- идентификатор родительской группы серверов;
name
- имя правила;
action
- действие, применяемое к правилу;
comment
- комментарий правила;
protocols
- список протоколов;
enabled
- статус правила: true
- включено, false
- выключено.
Ответ на успешный запрос:
{
"id": "integer"
}
id
- идентификатор созданного правила.
PUT /application_control_backend/rules/<id правила>
Json-тело запроса:
{
"parent_id": "string",
"name": "string",
"comment": "string",
"aliases": [ "string" ],
"protocols": [ "string" ],
"action": "drop" | "accept",
"enabled": "boolean"
}
parent_id
- идентификатор родительской группы серверов;
name
- имя правила;
comment
- комментарий правила;
protocols
- список протоколов;
action
- действие, применяемое к правилу;
enabled
- статус правила: true
- включено, false
- выключено.
Ответ на успешный запрос: 200 ОК
PATCH /application_control_backend/rules/move
Json-тело запроса:
{
"params": {
"id": "integer",
"anchor_item_id": "integer",
"insert_after": "boolean",
},
}
id
- идентификатор правила;
anchor_item_id
- идентификатор правила, ниже или выше которого нужно создать новое;
insert_after
- вставка до или после. Если true
, то вставить правило сразу после указанного в anchor_item_id
, если false
, то на месте указанного в anchor_item_id
.
DELETE /application_control_backend/rules/<id правила>
Ответ на успешный запрос: 200 OK
GET /ips/status
Ответ на успешный запрос:
[
{
"name": "string",
"status": "active" | "activating" | "deactivating" | "failed" | "inactive" | "reloading",
"msg": [ "string" ]
},
...
]
name
- название домена;
status
- статус;
msg
- cписок сообщений, объясняющий текущее состояние.
GET /ips/update
Ответ на успешный запрос:
{
"status": "up_to_date" | "updating" | "failed_to_update" | "disabled"],
"msg": "i18n_str",
"last_update": "float" | "null"
}
status
- текущий статус обновления баз:
up_to_date
- базы успешно обновлены;
updating
- скачиваем новые базы;
failed_to_update
- последняя попытка обновления баз завершилась неудачно;
disabled
- обновление баз выключено.
msg
- текстовое описание статуса обновления баз;
last_update
- время последнего успешного обновления баз.
GET /ips/update_advanced
Ответ на успешный запрос:
{
"status": "up_to_date" | "updating" | "failed_to_update" | "disabled",
"msg": "i18n_str",
"last_update": "float" | "null"
}
status
- текущий статус обновления баз:
up_to_date
- базы успешно обновлены;
updating
- скачиваем новые базы;
failed_to_update
- последняя попытка обновления баз завершилась неудачно;
disabled
- обновление баз выключено.
msg
- текстовое описание статуса обновления баз;
last_update
- время последнего успешного обновления баз.
GET /ips/state
Ответ на успешный запрос:
{
"enabled": "boolean"
}
enabled
- true
, если модуль включен, false
- выключен.
PUT /ips/state
Json-тело запроса:
{
"enabled": "boolean"
}
enabled
- true
если модуль включен, false
- выключен.
Ответ на успешный запрос: 200 OK
GET /ips/nets
Ответ на успешный запрос:
[
{
"id": "string",
"address": "string"
},
...
]
id
- идентификатор подсети;
address
- адрес подсети (например, 192.168.0.0
).
POST /ips/nets
Json-тело запроса:
{
"address": "string"
}
address
- адрес подсети (например,192.168.0.0
).
Ответ на успешный запрос:
{
"id": "string"
}
id
- идентификатор подсети.
GET /ips/rules
Ответ на успешный запрос:
[
{
"id": "string",
"name": "string",
"enabled": "boolean"
},
...
]
id
- идентификатор набора правил;
name
- название набора правил;
enabled
- состояние набора правил: true
- включен, false
- выключен.
PATCH /ips/rules/<id набора правил>
Json-тело запроса:
{
"enabled": "boolean"
}
enabled
- true
для включения набора правил, false
для выключения.
Ответ на успешный запрос: 200 OK
GET /ips/rules/sid/<sid правила>
Ответ на успешный запрос:
{
"rule": "string"
}
rule
- текст правила. Если правило не найдено, то пустая строка.
GET /ips/disabled_rules
Ответ на успешный запрос:
[
{
"sid": "integer",
"comment": "string",
"id": "string"
},
...
]
sid
- идентификатор правила;
comment
- описание, может быть пустым, максимальная длина - 255 символов;
id
- идентификатор правила.
POST /ips/disabled_rules
Json-тело запроса:
{
"sid": "integer",
"comment": "string"
}
sid
- идентификатор правила;
comment
- описание, может быть пустым, максимальная длина - 255 символов.
Ответ на успешный запрос:
{
"id": "string"
}
id
- идентификатор исключения.
PATCH /ips/disabled_rules/<id правила (не sid)>
Json-тело запроса:
{
"sid": "integer",
"comment": "string"
}
sid
- идентификатор правила;
comment
- описание, может быть пустым, максимальная длина - 255 символов;
Ответ на успешный запрос: 200 OK
DELETE /ips/disabled_rules/<id исключения>
Ответ на успешный запрос: 200 OK
GET /ips/bypass
Ответ на успешный запрос:
[
{
"id": "string",
"aliases": [ "string" ],
"comment": "string",
"enabled": "boolean",
},
...
]
id
- идентификатор исключения;
aliases
- список идентификаторов объектов. Допустимые типы: IP-адрес, Диапазон IP-адресов, Список IP-объектов, Список IP-адресов, Подсеть, Домен, Пользователь, Группа;
comment
- описание, может быть пустым, максимальная длина - 255 символов;
enabled
- состояние исключения: true
- включено, false
- выключено.
POST /ips/bypass
Json-тело запроса:
{
"aliases": [ "string" ],
"comment": "string",
"enabled": "boolean"
}
aliases
- список идентификаторов объектов. Допустимые типы: IP-адрес, Диапазон IP-адресов, Список IP-объектов, Список IP-адресов, Подсеть, Домен, Пользователь, Группа;
comment
- описание, может быть пустым, максимальная длина - 255 символов;
enabled
- состояние исключения: true
- включено, false
- выключено.
Ответ на успешный запрос:
{
"id": "string"
}
id
- идентификатор созданного исключения.
PATCH /ips/bypass/<id исключения>
Json-тело запроса:
{
"aliases": [ "string" ],
"comment": "string",
"enabled": "boolean"
}
aliases
- список идентификаторов объектов. Допустимые типы: IP-адрес, Диапазон IP-адресов, Список IP-объектов, Список IP-адресов, Подсеть, Домен, Пользователь, Группа;
comment
- описание, может быть пустым, максимальная длина - 255 символов;
enabled
- состояние исключения: true
- включено, false
- выключено.
Ответ на успешный запрос: 200 OK
DELETE /ips/bypass/<id исключения>
Ответ на успешный запрос: 200 OK
GET /content-filter/state
Ответ на успешный запрос:
{
"enabled": "boolean"
}
enabled
- состояние Контент-фильтра: true
- включен, false
- выключен.
PUT /content-filter/state
Json-тело запроса:
{
"enabled": "boolean"
}
enabled
- true
для включения Контент-фильтра, false
для выключения.
Ответ на успешный запрос: 200 ОК
GET /content-filter/settings
Ответ на успешный запрос:
{
"enabled_extended_categorizer": "boolean",
"quic_reject_enabled": "boolean"
}
enabled_extended_categorizer
- расширенная категоризация (SkyDNS): true
- включена, false
- выключена;
quic_reject_enabled
- запрет трафика по протоколу QUIC: true
- включен, false
- выключен.
PATCH /content-filter/settings
Json-тело запроса:
{
"enabled_extended_categorizer": "boolean",
"quic_reject_enabled": "boolean"
}
enabled_extended_categorizer
- расширенная категоризация (SkyDNS): true
- включена, false
- выключена;
quic_reject_enabled
- запрет трафика по протоколу QUIC: true
- включен, false
- выключен.
Ответ на успешный запрос: 200 OK
GET /proxy_backend/safe_search
Ответ на успешный запрос:
{
"enabled": "boolean"
}
enabled
- состояние безопасного поиска: true
- включен, false
- выключен.
PUT /proxy_backend/safe_search
Json-тело запроса:
{
"enabled": "boolean"
}
enabled
- true
для включения, false
для выключения.
Ответ на успешный запрос: 200 OK
GET /content-filter/categories
Json-тело ответа:
[
{
"id": "string",
"type": "string",
"name": "string",
"comment": "string"
},
...
]
id
- номер категории в формате users.id.1
или extended.id.1
;
type
- тип категории:
users
- пользовательские категории;
extended
- расширенные категории (SkyDNS);
files
- категории для файлов;
special
- специальные предопределенные категории (Прямое обращение по IP, Все категоризированные запросы, Все некатегоризированные запросы, Все запросы);
other
- остальные категории.
name
- имя категории;
comment
- описание категории.
GET /content-filter/users_categories
Json-ответ на запрос:
[
{
"id": "string",
"name": "string",
"comment": "string",
"urls": [ "string" ]
},
...
]
id
- идентификатор категории в формате users.id.1
;
name
- название категории, не пустая строка;
comment
- комментарий;
urls
- список адресов. Полный путь до страницы или только доменное имя, любое количество любых символов.
POST /content-filter/users_categories
Json-тело запроса:
{
"name": "string",
"comment": "string",
"urls": [ "string" ]
}
name
- название категории, не пустая строка;
comment
- комментарий;
urls
- список адресов. Полный путь до страницы или только доменное имя, любое количество любых символов.
Ответ на успешный запрос:
{
"id": "string"
}
id
- идентификатор пользовательской категории.
PUT /content-filter/users_categories/<id категории>
Json-тело запроса:
{
"name": "string",
"comment": "string",
"urls": [ "string" ]
}
name
- название категории, не пустая строка;
comment
- комментарий;
urls
- список адресов. Полный путь до страницы или только доменное имя, любое количество любых символов.
Ответ на успешный запрос:
{
"id": "string",
"name": "string",
"comment": "string",
"urls": [ "string" ]
}
id
- идентификатор пользовательской категории.
GET /content-filter/rules
Json-тело ответа:
[
{
"access": "allow" | "deny" | "bump" | "redirect",
"aliases": [ "string" ],
"categories": [ "string" ],
"comment": "string",
"enabled": "boolean",
"name": "string",
"parent_id": "string",
"redirect_url": "string" | "null",
"timetable": [ "string" ],
"id": "integer"
},
...
]
access
- действие, которое необходимо выполнить в правиле:
allow
- разрешить данный запрос;
deny
- запретить запрос и показать страницу блокировки;
bump
- расшифровать запрос;
redirect
- перенаправить запрос на redirect_url
.
aliases
- список идентификаторов алиасов (поле Применяется для);
categories
- список идентификаторов категорий сайтов;
comment
- комментарий, может быть пустым (максимальная длина - 255 символов);
enabled
- статус правила: true
- включено, false
выключено;
name
- название правила, не пустая строка;
parent_id
- идентификатор группы в Ideco Center, в которую входит Ideco NGFW, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
redirect_url
- адрес, на который перенаправляются запросы: string
при access
= redirect
, null
при остальных вариантах access
;
timetable
- время действия, список идентификаторов алиасов;
id
- идентификатор правила.
POST /content-filter/rules?anchor_item_id=123&insert_after={true|false}
anchor_item_id
- идентификатор правила, ниже или выше которого нужно создать новое. Если отсутствует, то новое правило будет добавлено в конец таблицы.
insert_after
- вставка до или после. Если значение true
или отсутствует, то новое правило будет добавлено сразу после указанного в anchor_item_id
. Если false
- на месте указанного в anchor_item_id
.
Json-тело запроса:
{
"name": "string",
"comment": "string",
"parent_id": "string",
"aliases": [ "string" ],
"categories": [ "string" ],
"access": "allow" | "deny" | "bump" | "redirect",
"redirect_url": "string" | "null",
"enabled": "boolean",
"timetable": [ "string" ]
}
name
- название правила, не пустая строка;
comment
- комментарий, может быть пустым, максимальная длина - 255 символов;
parent_id
- идентификатор группы в Ideco Center, в которую входит Ideco NGFW, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
aliases
- список идентификаторов алиасов (поле Применяется для);
categories
- список идентификаторов категорий сайтов;
access
- действие, которое необходимо выполнить в правиле:
allow
- разрешить данный запрос;
deny
- запретить запрос и показать страницу блокировки;
bump
- расшифровать запрос;
redirect
- перенаправить запрос на redirect_url
.
redirect_url
- адрес, на который перенаправляются запросы: string
при access
= redirect
, null
при остальных вариантах access
;
enabled
- true
для включения, false
для выключения;
timetable
- время действия, список идентификаторов алиасов.
PUT /content-filter/rules/<id правила>
Json-тело запроса:
{
"name": "string",
"comment": "string",
"parent_id": "string",
"aliases": [ "string" ],
"categories": [ "string" ],
"access": "allow" | "deny" | "bump" | "redirect",
"redirect_url": "string" | "null",
"enabled": "boolean",
"timetable": [ "string" ]
}
name
- название правила, не пустая строка;
comment
- комментарий, может быть пустым, максимальная длина - 255 символов;
parent_id
- идентификатор группы в Ideco Center, в которую входит Ideco NGFW, или константа f3ffde22-a562-4f43-ac04-c40fcec6a88c
(соответствует Корневой группе);
aliases
- список идентификаторов алиасов (поле Применяется для);
categories
- список идентификаторов категорий сайтов;
access
- действие, которое необходимо выполнить в правиле:
allow
- разрешить данный запрос;
deny
- запретить запрос и показать страницу блокировки;
bump
- расшифровать запрос;
redirect
- перенаправить запрос на redirect_url
.
redirect_url
- адрес, на который перенаправляются запросы: string
при access
= redirect
, null
при остальных вариантах access
;
enabled
- true
для включения, false
для выключения;
timetable
- время действия, список идентификаторов алиасов.
Ответ на успешный запрос: 200 ОК
PATCH /content-filter/rules/move
Json-тело запроса:
{
"params": {
"id": "integer",
"anchor_item_id": "integer",
"insert_after": "boolean"
}
}
id
- идентификатор правила;
anchor_item_id
- идентификатор правила, ниже или выше которого нужно вставить правило, которое перемещаем;
insert_after
- вставка до или после. Если true
, то правило будет вставлено сразу после указанного в anchor_item_id
, если false
- на месте указанного в anchor_item_id
.
Ответ на успешный запрос: 200 OK
GET /quotas/state
Ответ на успешный запрос:
{
"enabled": "boolean"
}
enabled
- если true
, то подсчет квот включен, если false
- выключен.
PUT /quotas/state
Json-тело запроса:
{
"enabled": "boolean"
}
enabled
- true
для включения, false
для выключения.
Ответ на успешный запрос: 200 ОК
GET /quotas/quotas
Ответ на успешный запрос:
[
{
"id": "string",
"title": "string",
"comment": "string",
"quota": "integer",
"enabled": "boolean",
"interval": "hour" | "day" | "week" | "month" | "quarter"
},
...
]
id
- идентификатор квоты;
title
- название квоты, максимальная длина - 42 символа;
comment
- комментарий, максимальная длина - 255 символов;
quota
- ограничение трафика в байтах;
enabled
- применяется ли квота;
interval
- период действия квоты (час, день, неделя, месяц, квартал).
POST /quotas/quotas
Json-тело запроса:
{
"title": "string",
"comment": "string",
"quota": "integer",
"enabled": "boolean",
"interval": "string"
}
title
- название квоты, максимальная длина - 42 символа;
comment
- комментарий, максимальная длина - 255 символов;
quota
- ограничение трафика в байтах;
enabled
- применяется ли квота;
interval
- период действия квоты (час, день, неделя, месяц, квартал).
Ответ на успешный запрос:
{
"id": "string"
}
id
- идентификатор квоты.
PATCH /quotas/quotas/<id квоты>
Json-тело запроса (все или некоторые поля):
{
"title": "string",
"comment": "string",
"quota": "integer",
"enabled": "boolean",
"interval": "string"
}
title
- название квоты, максимальная длина - 42 символа;
comment
- комментарий, максимальная длина - 255 символов;
quota
- ограничение трафика в байтах;
enabled
- применяется ли квота;
interval
- период действия квоты (час, день, неделя, месяц, квартал).
Ответ на успешный запрос: 200 ОК
Json-тело запроса: один из объектов описанных в разделе , без поля id
.
Json-тело запроса: один из объектов описанных в разделе , без поля id
.
aliases
- объекты, которые используются в правиле (например, any. Список объектов доступен по );
aliases
- объекты, которые используются в правиле (например, any. Список объектов доступен по );
aliases
- объекты, которые используются в правиле (например, any. Список объектов доступен по );