У меня есть локальный экземпляр SSAS, который настроен в powerbi с использованием шлюза, конфигурация правильная, поскольку отчет с использованием набора данных из SSAS работает из app.powebi и даже из встроенного отчета, если токен запрашивается с использованием потока имени пользователя / пароля.
Из соображений безопасности нашим клиентом требовалось ввести принцип обслуживания, он включен, установлен как администратор в рабочей области, я добавил 'ReadOverrideEffectiveIdentity' в принцип обслуживания, используя набор данных powerbi api.
В настоящее время когда я запрашиваю токен встраивания, используя clientSecret (субъект службы), требуется передать EffectiveIdentity (который ранее не был передан по этому пути).
Я протестировал два разных подхода:
- пройдено EffectiveIdentity с идентификатором = ServicePrincipalObjectId
прошедший текущий зарегистрированный идентификатор пользователя ( это обычно передается для других наборов данных, указывающих непосредственно на базу данных):
- отчет встроен, но когда он загружает визуалы, я получаю 401 и вижу, что 'https://wabi-north-europe- redirect.analysis. windows .net / explore / querydata' вернул
"{"error":{"code":"RLSNotAuthorizedForImpersonation","pbi.error":{"code":"RLSNotAuthorizedForImpersonation","parameters":{},"details":[],"exceptionCulprit":1}}}"
Я пробовал с разными пользователями, добавлен вручную на панель безопасности SSAS с соответствующими ролями, Gateway в новейшей возможной версии. В журналах шлюза есть информация о запросе, некоторая обработка, но в сценарии, когда он не работает, нет отчета sql выполнение.
Есть ли у вас какие-либо идеи, что я должен проверить дальше, а что нет?
Я основывал свою работу главным образом на:
https://prologika.com/power-bi-embedded-service-principals-and-ssas/
https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-row-level-security#on -предпринимательства ...
https://docs.microsoft.com/en-us/power-bi/developer/embedded/embedded-row-level-security#working -wit ...
Заранее спасибо