Соседи
Гостиница через дорогу ваших броней не увидит
В Гостеоне работают разные гостиницы, и часть
из них — соседи и конкуренты. Обычно за тем, чтобы не показать одному чужое,
следит сама программа. Одна ошибка программиста в одном месте — и человек
видит чужие брони, цены и телефоны гостей.
Мы сделали иначе: запрет стоит не в программе,
а в самом хранилище. Защита по владельцу включена на 61 таблице из 78 — это все,
где живут ваши брони, гости, цены и расчёты. Даже если мы напишем запрос
с ошибкой, чужие строки не придут: для нашей программы их просто нет.
Оставшиеся семнадцать — служебные: вход
и сеансы, приглашения сотрудников, очередь исходящих писем, настройки приёма
оплаты, заявки с этого сайта. Там разделение держит программа, и мы знаем
поимённо каждую такую таблицу. Говорим об этом прямо, потому что «у нас всё
защищено» без числа — это не ответ.
Как мы это проверяем
Отдельная проверка перебирает все защищённые таблицы
по очереди: читает под меткой одной гостиницы, пробует записать в чужую,
пробует запросить вообще без метки — и сверяет список исключений с тем,
что на самом деле в базе.
Обещание держится на трёх вещах сразу:
метка, включённая защита и рабочая роль без права её обойти. Отвалится любая —
и обещание перестанет быть правдой молча. Поэтому проверяются все три, а не одна.
Последняя сверка с боевой базой — 8 сентября 2026 года.