Я хочу определить все права доступа в моей базе данных 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 и сервер отчетов на одном компьютере? Если да, то как?