Перейти к содержанию

Версия 26.10.1.0

Новое

Перенос прав доступа на представления витрин

Если у источника данных включён перенос прав доступа, он больше не затрагивает определение объекта витрины: объект создаётся строго по сгенерированному SQL, показанному в DDL-скрипте, а права затем применяются к самому объекту. Обычное представление выдаёт право на чтение только тем пользователям и ролям, которые могут читать все его источники, и позволяет базе данных самой применять ограничения столбцов и политики защиты строк источников к каждому читающему. Таблица выдаёт каждому пользователю или роли доступ только к тем столбцам, которые им разрешено читать, на ней воссоздаются политики защиты строк источника, а в Microsoft SQL Server к ней также добавляются маски источника. Если политику невозможно перенести на объект, ограниченным ею пользователям и ролям доступ к объекту запрещается, поэтому безопасность всегда в приоритете. Пока перенос включён, материализованные представления недоступны, поскольку сохранённый снимок данных невозможно фильтровать для каждого читающего: вариант «Материализованное представление» показывается недоступным с подсказкой использовать вместо него обычное представление или таблицу. Предпросмотр «Права доступа, которые будут перенесены» теперь показывает, кто получает доступ к какой части столбцов, какие столбцы ограничены и для кого, какие столбцы маскируются и каким способом применяется каждая политика защиты строк — контролируется базой данных, политика создана на объекте или доступ ограниченным пользователям запрещён; предпросмотр носит информационный характер и никогда не блокирует развёртывание. На вкладке «Перенесенные права доступа» окна информации о представлении появилась колонка «Кому применяется», поэтому каждая политика защиты строк показывается с названием и условием вместе с пользователями и ролями, к которым она относится. Когда пользователь просматривает данные представления под личными учётными данными базы данных, выбираются только столбцы, на которые у этой учётной записи есть права; если прав на объект у неё нет, выводится сообщение «У вас недостаточно прав для доступа к запрошенным данным в базе данных», а статус объекта не меняется. Нехватка прав у учётной записи, под которой выполняется запрос в целевой базе данных, теперь сообщается именно как нехватка прав — с рекомендацией обратиться к администратору базы данных.

Улучшения и исправления

  • Если настроены провайдеры идентификации, первый шаг входа запоминает адреса электронной почты, с которыми в этом браузере уже выполнялся успешный вход, и предлагает их в выпадающем списке; любой адрес можно удалить из списка, а ссылка «Пользователь не в списке?» возвращает к вводу адреса вручную (IMP-3173)
  • На шаге входа с паролем DataForge появилась кнопка «Вернуться к выбору способа входа», а на экранах входа с одной основной кнопкой нажатие Enter действует так же, как нажатие этой кнопки (IMP-3173)
  • Почтовые домены для провайдеров идентификации больше не настраиваются: провайдер предлагается только пользователям своей компании, тогда как раньше провайдер без доменов показывался пользователям всех компаний (IMP-3173)
  • Окна добавления компании и добавления пользователей на экранах списка пользователей, сведений о компании и «Моя компания» теперь устроены так же, как окно добавления участников проекта, а компанию теперь можно создать, не добавляя в неё пользователей (IMP-3148)
  • Изменённое описание проекта теперь отображается сразу после сохранения и переносится в новый проект, созданный клонированием (IMP-2910)
  • Холсты — линидж, конструктор формул и анализ влияния — потребляют заметно меньше ресурсов: холст в режиме ожидания больше не перерисовывается непрерывно, а пунктирные линии связей остаются статичными, а не анимированными (IMP-2948)
  • Выбор операции «IN» или «NOT IN» в фильтре для проверки таблицы фактов больше не сбрасывает уже введённое значение фильтра (IMP-3012)
  • При раскрытии справочника на холсте витрины пунктирные линии теперь показываются каждый раз, впервые раскрытый справочник появляется в видимой области рядом с таблицей фактов, из которой его раскрыли, а перемещённый справочник остаётся на месте после сохранения витрины (IMP-3132)
  • Представление витрины теперь отмечается как устаревшее во всех случаях, которые влияют на его данные: при удалении строки в РПИ, при изменении ключей в архитекторе таблицы фактов, при изменении формулы или источника, от которых зависит показатель, измерение или факт, а также при внесении таких изменений через публичный API (IMP-3154)
  • Статус представления витрины теперь меняется в соответствии с выполненным действием при создании, обновлении или удалении представления, а не переключается ненадолго между состояниями (IMP-3156)
  • Если показать представление витрины не удалось, ошибка теперь выводится в уведомлении, а кнопка «Выполнить SQL-скрипт» перестаёт загружаться и снова становится доступной, а не остаётся в состоянии загрузки бесконечно (IMP-3195)
  • Подключение PostgreSQL теперь загружает список схем той базы данных, которая выбрана в подключении, даже если она отличается от базы данных источника данных, проверка подключения проверяет выбранные базу данных и схему, а сохранить подключение без схемы больше нельзя (IMP-3186)
  • В локальных установках первичные измерения и факты — в том числе в таблицах фактов и витринах — больше не показывают ошибки, которые исчезали только после обновления подключения (IMP-3251)