Может ли одна компания увидеть данные другой

Где стоит правило изоляции компаний и как его проверяют

Правило живёт в базе, а не в приложении

Разграничение по организациям включено на каждой таблице арендатора и применяется принудительно — в том числе к владельцу схемы. Запрос, в котором забыли условие по организации, всё равно не увидит чужого: правило применяет база, а не автор запроса.

Подробнее

Приложение подключается ролью, которая не является ни суперпользователем, ни владельцем схемы. Иначе разграничение обходилось бы самим подключением, и все проверки ниже ничего бы не значили.

Это изоляция компании, а не проекта

Две компании не видят данных друг друга. Внутри одной компании разграничение по проектам есть не у всех плоскостей: у очереди согласований его нет по устройству.

Проверяется отдельными наборами по каждой плоскости

Изоляция проверяется тестами, которые подключаются ролью приложения и пытаются прочитать чужое. Наборы написаны по каждой плоскости данных отдельно — так видно, что правило не забыли на новой таблице.

Основание: правила базы данных; автоматические тесты продукта. Страница описывает то, что есть в этой сборке, а не то, что запланировано.

Покажем систему на одном вашем процессе.

Демо — 30 минут, без предоплаты и без установки. Напишите нам — договоримся о времени.

Записаться на демо