Узнайте, какие действия необходимо выполнить для внедрения содержимого Power BI в приложение.

Недавно корпорация Майкрософт объявила о выпуске Power BI Premium — новой модели лицензирования на основе емкости, которая повышает возможности получения доступа к содержимому, а также его совместного использования и распространения. Это предложение также обеспечивает дополнительные возможности масштабирования и повышает производительность службы Power BI.

С момента объявления выпуска Power BI Premium началось объединение служб Power BI Embedded и Power BI в одно решение, что позволит улучшить возможности внедрения содержимого Power BI в приложения. Это означает, что у вас будет одна область API, одинаковый набор возможностей и доступ к последним функциям Power BI, например информационным панелям, шлюзам и рабочим областям приложений, которые можно использовать при внедрении содержимого. В будущем вы сможете начать работу с Power BI Desktop, а затем обновить ее до решения Power BI Premium, общедоступная версия которого выйдет в конце второго квартала 2017 года.

В этой статье будет рассмотрено внедрение содержимого Power BI для пользователей Power BI и пользователей, не использующих Power BI. Процедура в обоих случаях похожа. Для шагов, относящихся только к внедрению для пользователей, не использующих Power BI, добавлены соответствующие выноски.

Ниже приведены действия, которые позволяют реализовать эту возможность. Мы рассмотрим, что необходимо сделать, чтобы создать и использовать внедренное содержимое в приложение.

Примечание.

В интерфейсах API Power BI рабочие области приложения по-прежнему называются группами. Если упоминаются группы, это означает, что вы работаете с рабочими областями приложения.

Шаг 1. Настройка среды разработки внедренной аналитики

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

Примечание.

Наличие Power BI Premium не является обязательным условием для разработки приложения. Разработчикам приложения потребуется лицензия Power BI Pro.

Клиент Azure Active Directory

Чтобы внедрить элементы из Power BI, потребуется клиент Azure Active Directory (Azure AD). У этого клиента должен быть по крайней мере один пользователь Power BI Pro. Также будет необходимо определить приложение Azure AD в данном клиенте. Можно использовать существующий клиент Azure AD или создать новый клиент специально для внедрения.

Потребуется определить, какой вариант клиента следует использовать.

  • Использовать существующий корпоративной клиент Power BI?
  • Использовать отдельный клиент для приложения?
  • Использовать отдельный клиент для каждого пользователя?

Если вы решили создать клиент для приложения или для каждого пользователя, ознакомьтесь с разделом Создание клиента Azure Active Directory или Получение клиента Azure Active Directory.

Примечание.

Если вы планируете внедрять содержимое для пользователей, не использующих Power BI, то рекомендуется создать клиент Azure AD.

Создание учетной записи Power BI Pro

Для внедрения содержимого требуется только одна учетная запись Power BI Pro. Тем не менее можно использовать несколько различных пользователей с особым доступом к элементам. Давайте рассмотрим возможных пользователей в клиенте.

Ниже приведены учетные записи, которые должны существовать в клиенте и иметь лицензию Power BI Pro.

Примечание.

Этим учетным записям потребуются лицензии Power BI Pro, чтобы использовать рабочие области приложений.

Администратор организации или клиента

Мы не советуем использовать глобального администратора организации или клиента в качестве учетной записи, используемой приложением. Таким образом вы ограничите права доступа учетной записи приложения в организации. Рекомендуется, чтобы этот администратор управлял всеми рабочими областями приложений, созданными для внедрения.

Учетные записи аналитиков, создающих содержимое.

У вас может быть несколько пользователей, которые создают содержимое для Power BI. Вам потребуется учетная запись Power BI Pro для каждого аналитика, который создает и развертывает содержимое в Power BI.

Главная учетная запись для пользователей, не использующих Power BI

Это учетная запись, которую ваше приложение будет использовать при внедрении содержимого для пользователей, не использующих Power BI. Это единственная учетная запись, необходимая в организации. Ее также можно использовать как учетную запись администратора и аналитика, но мы не советуем это делать. Учетные данные этой учетной записи хранятся в серверной части приложения. Эта учетная запись используется для получения токена аутентификации Azure AD, используемого в интерфейсах API Power BI, и создания токена внедрения для приложения, предназначенного для пользователей, не использующих Power BI.

Данная учетная запись должна быть учетной записью администратора рабочей области, используемой для внедрения.

Регистрация приложения и разрешения

Приложение необходимо будет зарегистрировать в Azure AD и предоставить ему разрешения для внедрения содержимого из Power BI. Вам потребуется зарегистрировать приложение с помощью главной учетной записи, созданной на предыдущем шаге.

Регистрация приложения

Сначала потребуется зарегистрировать приложение в Azure AD. Хотя это можно сделать с помощью портала Azure AD, мы создали веб-страницу, на которой вы сможете быстро зарегистрировать приложение. То, какие элементы следует выбрать для приложения, зависит от пользователей, для которых внедряется содержимое. Если вы будете внедрять содержимое для пользователей, не использующих Power BI, необходимо выбрать собственное приложение.

Назначение внедрения Тип приложения
Пользователи Power BI Серверное веб-приложение или собственное приложение
Пользователи, не использующие Power BI Собственное приложение

Пошаговые инструкции по регистрации приложения приведены в разделе Регистрация приложения для внедрения содержимого Power BI.

Применение разрешений к приложению

Важно!

Этот раздел относится только к приложениям, которые внедряют содержимое для пользователей, не использующих Power BI.

Кроме разрешений, представленных на странице регистрации приложения, необходимо также включить дополнительные разрешения. Это можно сделать на портале Azure или программным способом.

Для этого вам потребуется учетная запись администратора клиента или организации. Это должен быть пользователь с ролью глобального администратора.

Применение разрешений на портале Azure AD
  1. На портале Azure перейдите к колонке Регистрация приложений и выберите приложение, используемое для внедрения.

  2. В разделе Доступ через API выберите Необходимые разрешения.

  3. Выберите Microsoft Azure Active Directory и затем установите флажок Осуществляйте доступ к каталогу как пользователь, выполнивший вход. Нажмите кнопку Сохранить.

  4. В колонке Необходимые разрешения выберите Power BI Service (Power BI) (Служба Power BI).

    Примечание.

    Если вы создали приложение непосредственно на портале Azure AD, служба Power BI (Power BI) может отсутствовать. Если это не так, выберите + Добавить, затем щелкните 1 Select and API (1. Выберите API). Выберите Служба Power BI из списка API и щелкните Выбрать. После этого можно перейти к шагу 5.

  5. Установите все разрешения в разделе Делегированные разрешения. Их необходимо выбирать по одному. Это позволит сохранить настройки. После завершения щелкните Сохранить.

  6. В колонке Необходимые разрешения выберите Предоставить разрешения.

    Это позволит предоставить разрешения приложений от имени всех пользователей в организации или клиенте. Если вы не хотите этого, войдите по крайней мере один раз в Azure AD в интерактивном режиме, используя идентификатор приложения.

    Примечание.

    Чтобы предоставить разрешение всем пользователям в клиенте, эта операция должна быть выполнена с учетной записью с ролью глобального администратора. В противном случае разрешение будет предоставлено только пользователю, выполнившему это действие.

Применение разрешений программным способом
  1. В этом сценарии необходимо получить имеющиеся субъекты-службы (пользователи) клиента. Сведения о том, как это сделать, см. в статье Get servicePrincipal (Получение объекта servicePrincipal).

    Примечание.

    API Get servicePrincipal можно вызвать без параметра {id}. Это позволит получить все субъекты-службы в клиенте.

  2. Проверьте наличие субъекта-службы, задав в качестве значения свойства appId идентификатор клиента приложения.

  3. Создайте план службы, если он отсутствует в вашем приложении.

    Post https://graph.microsoft.com/beta/servicePrincipals
    Authorization: Bearer ey..qw
    Content-Type: application/json
    {
    "accountEnabled" : true,
    "appId" : "{App_Client_ID}",
    "displayName" : "{App_DisplayName}"
    }
    
  4. Предоставьте разрешение приложения на использование API-интерфейса Power BI.

    Post https://graph.microsoft.com/beta/OAuth2PermissionGrants
    Authorization: Bearer ey..qw
    Content-Type: application/json
    { 
    "clientId":"{Service_Plan_ID}",
    "consentType":"AllPrincipals",
    "resourceId":"c78b2585-1df6-41de-95f7-dc5aeb7dc98e",
    "scope":"Dataset.ReadWrite.All Dashboard.Read.All Report.Read.All Group.Read Group.Read.All Content.Create Metadata.View_Any Dataset.Read.All Data.Alter_Any",
    "expiryTime":"2018-03-29T14:35:32.4943409+03:00",
    "startTime":"2017-03-29T14:35:32.4933413+03:00"
    }
    
  5. Предоставьте разрешение приложения на использование ADD.

    Post https://graph.microsoft.com/beta/OAuth2PermissionGrants
    Authorization: Bearer ey..qw
    Content-Type: application/json
    { 
    "clientId":"{Service_Plan_ID}",
    "consentType":"AllPrincipals",
    "resourceId":"61e57743-d5cf-41ba-bd1a-2b381390a3f1",
    "scope":"User.Read Directory.AccessAsUser.All",
    "expiryTime":"2018-03-29T14:35:32.4943409+03:00",
    "startTime":"2017-03-29T14:35:32.4933413+03:00"
    }
    

Создание рабочих областей приложений

В случае внедрения панелей мониторинга и отчетов для пользователей, не использующих Power BI, эти панели мониторинга и отчеты должны быть помещены в рабочую область приложения. Сведения о том, как создать рабочую область приложения, см. в разделе Создание и распространение приложения в Power BI.

Важно!

Главная учетная запись, которая упоминалась выше, должна быть учетной записью администратора рабочей области приложения.

Создание и передача отчетов

Вы можете создавать отчеты и наборы данных с помощью Power BI Desktop, а затем публиковать эти отчеты в рабочей области приложения. У пользователя, публикующего отчеты в рабочей области приложения, должна быть лицензия Power BI Pro.

Шаг 2. Внедрение содержимого

В приложении потребуется пройти аутентификацию в Power BI. В случае внедрения содержимого для пользователей, не использующих Power BI, для этого потребуется сохранить в приложении учетные данные главной учетной записи.

Используйте Power BI и JavaScript API для внедрения информационных панелей и отчетов в свое приложение. Дополнительные сведения см. в приведенных ниже статьях.

Для внедрения содержимого для пользователей, не использующих Power BI, требуется токен внедрения. Чтобы узнать больше, ознакомьтесь с разделом GenerateToken.

Шаг 3. Перенос решения в рабочую среду

Когда вы будете готовы перенести содержимое в рабочую среду, сделайте следующее.

Пользователи Power BI

В случае внедрения для пользователей Power BI необходимо только уведомить пользователей о том, как получить доступ к приложению.

Пользователи, не использующие Power BI

В случае внедрения для пользователей, не использующих Power BI, необходимо будет сделать следующее.

  • Если вы можете использовать клиент для рабочей среды организации, то рекомендуется создать новую среду внедренной аналитики для рабочей среды. Чтобы получить дополнительные сведения, ознакомьтесь с шагом 1 выше.

  • Если вы используете отдельный клиент для разработки, необходимо будет убедитесь, что рабочие области приложений, панели мониторинга и отчеты доступны в вашей рабочей среде. Также необходимо будет убедиться, что приложение создано в Azure AD для рабочего клиента и для этого приложения назначены соответствующие разрешения, как описано на шаге 1.

  • Приобретите необходимый размер емкости. Ниже приведена таблица, с помощью которой можно определить, какой номер SKU емкости Premium может вам потребоваться. Дополнительные сведения приведены в техническом документе по планированию емкости для внедренной аналитики. Когда вы будете готовы к покупке, вы сможете осуществить ее в Центре администрирования Office 365.

Узел емкости Общее число ядер
(серверная часть и интерфейс)
Внутренние ядра Интерфейсные ядра Ограничения для подключений DirectQuery и активных подключений Максимальное число страниц, отображаемых в часы максимальной нагрузки Доступность
EM1 1 виртуальное ядро 0,5 ядра, 3 ГБ ОЗУ 0,5 ядра 1–300 Июль 2017 г.
EM2 2 виртуальных ядра 1 ядро, 5 ГБ ОЗУ 1 ядро 301–600 Июль 2017 г.
EM3 4 виртуальных ядра 2 ядра, 10 ГБ ОЗУ 2 ядра 601–1200 Июль 2017 г.
P1 8 виртуальных ядер 4 ядра, 25 ГБ ОЗУ 4 ядра 30 в секунду 1201–2400 Доступность
P2 16 виртуальных ядер 8 ядер, 50 ГБ ОЗУ 8 ядер 60 в секунду 2401–4800 Доступность
P3 32 виртуальных ядра 16 ядер, 100 ГБ ОЗУ 16 ядер 120 в секунду 4801–9600 Доступность
Примечание.

Чтобы приобрести Power BI Premium, необходимо быть глобальным администратором или администратором выставления счетов в своем клиенте. Сведения о том, как приобрести Power BI Premium, см. в разделе Как купить Power BI Premium.

  • Измените рабочую область приложения и переместите ее в емкость Premium в диалоговом окне "Дополнительно".

  • Разверните обновленное приложение в рабочую среду и приступите к внедрению отчетов из службы Power BI.

Дальнейшие действия

Внедрение в Power BI
Как перенести содержимое коллекции рабочих областей Power BI Embedded в Power BI
Что такое Power BI Premium?
Как купить Power BI Premium
Репозиторий Git JavaScript API
Репозиторий Git Power BI C#
Пример внедрения JavaScript
Технический документ по планированию емкости для внедренной аналитики
Техническая документация по Power BI Premium

Появились дополнительные вопросы? Попробуйте задать вопрос в сообществе Power BI.