Мы хотим аутентифицировать Power BI в приложении .NET Core. Это можно сделать различными способами:
[*]Базовая аутентификация
[*]Субъект службы
< /ol>
Базовая аутентификация
Раньше аутентификация выполнялась с использованием базовой аутентификации (имя пользователя и пароль), которая работала нормально. Но теперь мы планируем сделать его более безопасным.
Субъект службы
Мы считаем, что использование принципала службы – это правильный подход для нашего случая. Я предполагаю, что при проверке подлинности с помощью субъекта-службы в Power BI используется поток учетных данных клиента OAuth2.
Мы настроили субъект-службу в веб-приложении Power BI следующим образом:
Код: Выделить всё
Power BI => Workspace => Semantic Model => Settings => Data Source Credentials => Edit Credentials

Мы добавили все виды разрешений API при регистрации приложения в Entra ID. Вот оно:

Кроме того, мы добавили регистрацию приложения в качестве группы безопасности в Power BI с разрешениями администратора:
[img]https:// i.sstatic.net/lRLa2O9F.png[/img]
Как видите, группа безопасности с регистрацией приложения и сама регистрация приложения были добавлены в рабочую область с разрешениями администратора.< /p>
Когда мы хотим настроить аутентификацию для Power BI для доступа к веб-API ASP.NET Core в качестве субъекта-службы, мы получаем следующую ошибку:
Не удалось обновить учетные данные источника данных.
[img]https:// i.sstatic.net/gTU9BiIz.png[/img]
Как мы можем решить проблему невозможности аутентификации Power BI в качестве субъекта-службы в ASP.NET Core Веб-API?
Я предполагаю, что мы не предоставили Power BI достаточно информации, поскольку Power BI не запрашивает другую информацию, например область действия и URL-адрес для токена OAuth2. .
Итак, я не сказал Power BI, что это URL-адрес, по которому можно сгенерировать токен:
https://login. microsoftonline.com/azure-tenant-guid/oauth2/v2.0/token
.
Для OAuth2 область действия также важна и имеет следующий формат:
api://***********/.default
Подробнее здесь: https://stackoverflow.com/questions/790 ... -principal