Устранение неполадок доступа к данным в изолированной среде¶
Разделение прав доступа к данным на уровне строк создаёт изолированную среду для групп пользователей с подмножеством строк таблиц ("песочницу данных").
В этом разделе разбирается работа изолированной среды данных:
Если ваш вопрос касается смежной темы, посмотрите связанные проблемы.
Пользователи не видят тех строк, которые им разрешены¶
Фильтруются ли строки по атрибуту пользователя?¶
Возможная причина
Изолированная среда создаётся на основе атрибутов учётной записи или группы.
Решение
Ожидаемое поведение: атрибуты пользователя или группы позволяют фильтровать строки таблицы, разбивая их на изолированные подмножества. Если же вы не хотите фильтровать строки и создавать изолированную среду, вы можете удалить настройки фильтрации на основе атрибута:
- перейдите в Управление > Разрешения и измените уровень доступа к таблице для группы;
- добавьте пользователя в группу с неограниченным доступом к таблице (вы можете создать для этого новую группу);
- удалите атрибут пользователя в настройках его учётной записи, если он задан, чтобы избежать коллизии.
Люди видят строки, которые им не разрешены¶
Здесь возможны различные причины.
Состоят ли эти пользователи в группах с более широкими разрешениями?¶
Возможная причина
Если пользователь состоит в нескольких группах, он получает наиболее разрешительный доступ, поэтому участия в группе без ограничений на просмотр данных этой таблицы достаточно, чтобы разграничение по строкам перестало работать.
Решение
Проверьте, к каким группам принадлежит этот пользователь. Имеет ли какая-то из групп доступ к таблице, которую вы пытаетесь изолировать? Если да, удалите его учётную запись из этой группы. Помните, что все пользователи являются членами группы Все пользователи, поэтому мы советуем отозвать разрешения группы Все пользователи и создать новые группы для выборочного применения разрешений к вашим источникам данных.
Запрос доступен через встраивание и общедоступную ссылку?¶
Возможная причина
Запрос является общедоступным. Результаты общедоступных запросов не могут быть представлены в изолированном виде. Если пользователь не авторизован (а пользователи общедоступных запросов не проходят авторизацию), система не может применить соответствующие атрибуты.
Решение
Не создавайте общедоступные ссылки к результатам запросов с разграничением данных. См. Общедоступные ссылки.
Запрос написан на SQL?¶
Возможная причина
В Metabase результаты SQL-запросов не могут быть разграничены построчно на основе атрибута. В Glarus BI такое разграничение возможно. Если вы столкнулись с проблемами, пожалуйста, сообщите нам об этом.
Решение
-
Если вы пользуетесь сборкой Metabase, не пытайтесь настраивать разграничение доступа к данным на основе прямого запроса. Работает только конструктор. Если же вы пользуетесь Glarus BI, разграничение возможно — проверьте атрибуты в настройках группы и учётной записи.
-
Существует также альтернативное решение. Вы можете настроить все детали доступа на уровне пользователей СУБД и создать несколько подключений в Glarus BI к одной и той же БД под разными пользователями с разными уровнями доступа.
Пользователи не могут получить доступ к данным, которые им должны быть разрешены¶
Доступ запрещён или в результатах пусто, хотя данные ожидаются.
Возможная причина
Администратор закрыл или ограничил доступ к таблице. Например, он мог по ошибке установить в настройке разрешений к данным "Просмотр данных: заблокирован" или "Создание запросов: нет", что не даёт возможности получать данные.
Решение
- Проверить уровень доступа к данным для группы: Управление > Разрешения к таблице.
- Если пользователь не состоит в группе, которая имеет доступ к таблице, добавить его в такую группу или создать новую группу с доступом к таблице и включить пользователя в неё.