SSAS: DirectQuery для базы данных SQL с использованием текущего пользователя

Я хочу определить все права доступа в моей базе данных SQL Server, чтобы она была удобной и централизованной. Я реализую базовые вещи, такие как выбор гранта в схемах и таблицах, шифрование столбцов и RLS. На основе базы данных я создаю табличную модель с SSAS с подключением DirectQuery. Я хочу построить отчет поверх табличной модели с подключением DirectQuery.

directQuery указывает: безопасность может быть обеспечена внутренней исходной базой данных с помощью функций безопасности на уровне строк из базы данных.

Выдача себя за другое лицо в службе Analysis Service Табличные состояния: Impersonate Current User Указывает, что данные должны быть доступны из источника данных с использованием идентификатора пользователя, отправившего запрос. Этот параметр применяется только к режиму DirectQuery.

Проблема:

Я не могу выбрать использование текущего пользователя в качестве режима олицетворения в моей табличной модели ssas. - ›ssas источник данных содержит режим олицетворения, который не поддерживается для операций обработки. изменение режима олицетворения в ssms дает эта ошибка, VS2019 выглядит похожим с тем же контентом, я могу развернуть его как конкретный пользователь, но это означает, что все используют права доступа этого указанного пользователя.

  • В моей табличной модели используется уровень совместимости 1400. Она развернута на сервере Microsoft Analysis Server 15.0.32.50, табличный режим. (Модель не может использовать DirectQuery при совместимости 1500 по какой-то непонятной причине. Не делайте это своей темой, если в этом нет крайней необходимости.)
  • Версия SQL Server - 2019, 15.0.2000.5
  • Необходимо использовать локальный сервер отчетов.
  • SSAS, база данных и сервер отчетов работают на одном сервере SQL.

Можно ли реализовать это решение, используя базу данных, ssas и сервер отчетов на одном компьютере? Если да, то как?


person Kartoffelmann    schedule 16.06.2021    source источник


Ответы (1)


Хорошо, так что после того, как я слишком долго возился с этим материалом, я сузил его до настройки SQL-Server. Что-то в конфигурации вызывает кучу проблем.

Использование прямого запроса для передачи информации о пользователе описанным выше способом вполне допустимо.

person Kartoffelmann    schedule 21.06.2021