Обновлена 15 сентября 2026 г. в 08:55
box.session.on_access_denied()
Определение триггера для реагирования на попытки пользователя выполнять действия, которые не входят в его права.
Параметры:
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".