Tarantool CE/EE Documentation portal logo
Помощь
Обновлена 15 сентября 2026 г. в 08:55

box.session.on_access_denied()

box.session.on_access_denied([trigger-function [, old-trigger-function]])

Определение триггера для реагирования на попытки пользователя выполнять действия, которые не входят в его права.

Параметры:

  • trigger-function (function) — функция, которая станет триггерной функцией
  • old-trigger-function (function) — существующая триггерная функция, которая будет заменена на trigger-function

Возвращает

nil или указатель на функцию

Если параметры — (nil, old-trigger-function), то старый триггер удаляется.

Если оба параметра опущены, то в ответе возвращается список существующих триггерных функций.

Подробнее о характеристиках триггеров см. в разделе триггеры.

Пример:

Например, администратор сервера может вести журнал запрещенных действий так:

tarantool> function on_access_denied(op, type, name)         > log.warn('User %s tried to %s %s %s without required privileges', box.session.user(), op, type, name)         > end---...tarantool> box.session.on_access_denied(on_access_denied)---- 'function: 0x011b41af38'...tarantool> function test() print('you shall not pass') end---...tarantool> box.schema.func.create('test')---...

Затем, когда какой-либо пользователь без нужных прав попытается вызвать test() и получит ошибку, сервер выполнит этот триггер и запишет в журнал "User user_name tried to Execute function test without required privileges".