Получение встраиваемого токена для приложения-владельца модели данных в Power BI - PullRequest
0 голосов
/ 11 января 2020

Я работал над реализацией получения токена Power BI Embed для модели данных «Владельцы приложений» в Power BI. Это немного сложно, я нашел сообщение: https://www.msbiblog.com/2018/01/12/power-bi-embedded-example-using-curl-and-php/ Это помогло, но преобразование этого в приложение содержит данные, но я чувствую, что упускаю небольшой, но важный момент где-то

У кого-нибудь есть идеи или примеры кода, которые помогут пролить свет на это

спасибо

1 Ответ

2 голосов
/ 11 января 2020

Не очень ясно, что вам не хватает, но вот официальные образцы от Microsoft, включая демонстрацию того, как реализовать Приложение владеет сценарием данных . Хорошее место для начала - прочитать Встраивание контента в ваше приложение для ваших клиентов учебник. Вы можете увидеть, как все работает в демоверсии детской площадки .

Чтобы встроить элемент Power BI в ваше приложение, вам необходимо сделать следующее:

  • Зарегистрируйте приложение - go на dev.powerbi.com / apps и зарегистрируйте собственное приложение. Выберите, какие разрешения следует предоставить (если вы не уверены, для первых тестов просто предоставьте их все). Скопируйте guid - это идентификатор приложения, или идентификатор клиента.

  • Следующим шагом является аутентификация из вашего приложения и получение токена доступа. Для этого используйте Azure Библиотеку аутентификации Active Directory (ADAL) - вызовите некоторые из acquireToken методов класса AuthenticationContext. Вот одна клиентская библиотека ADAL для PHP, а вот документация Microsoft для этих методов.

  • Используйте этот токен доступа для вызова API REST Power BI и получите embedUrl элемента, который вы хотите встроить, например, report .

  • Use Power BI JavaScript client чтобы встроить этот элемент. Вам нужно инициализировать один класс встраивания конфигурации и передать информацию о типе элемента (отчет, панель мониторинга, плитка), где его найти (embedUrl), аутентификации (токен доступа), некоторых других параметрах конфигурации (показать или скрыть). панель фильтров, навигация и т. д. c.), применяемые фильтры и т. д. Если вы будете использовать токен доступа, полученный выше, установите tokenType равным AAD. Этот токен имеет много привилегий, поэтому по соображениям безопасности вы можете использовать вместо него Embed токен. В этом случае используйте токен доступа для повторного вызова REST API (например, Reports GenerateTokenInGroup ).

  • Вызовите метод powerbi.embed клиента JavaScript, передайте встроенная конфигурация для визуализации этого элемента Power BI в вашем приложении.

Я также рекомендую вам взглянуть на статью Основы встраивания (и остальные статьи в этой вики).

...