Общие сведения о различных решениях внедрения

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

Сценарии приложений

Существует два разных сценария внедрения отчета Power BI в приложение.

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

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

Тип внедренного содержимого определяется значением параметраembedUrl. Чтобы получить URL-адрес внедрения для определенного типа содержимого, вызовите соответствующий REST API Power BI. Например, вызовите Получить отчеты, чтобы получить URL-адрес внедрения для внедрения отчета.

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

Внедрение для организации

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

В embedConfigurationзадайте для tokenType значение TokenType.Aad.

// Get models so you can use the TokenType enum.
let models = window['powerbi-client'].models;

let embedConfiguration = {
    type: 'report',
    id: '5dac7a4a-4452-46b3-99f6-a25915e0fe55',
    embedUrl: 'https://app.powerbi.com/reportEmbed',
    tokenType: models.TokenType.Aad,
    accessToken: 'e4...rf'
};

let reportContainer = $('#reportContainer')[0];
let report = powerbi.embed(reportContainer, embedConfiguration);

Внедрение для клиентов

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

В embedConfigurationзадайте для tokenType значение TokenType.Embed.

// Get models so you can use the TokenType enum.
let models = window['powerbi-client'].models;

let embedConfiguration = {
    type: 'report',
    id: '5dac7a4a-4452-46b3-99f6-a25915e0fe55',
    embedUrl: 'https://app.powerbi.com/reportEmbed',
    tokenType: models.TokenType.Embed,
    accessToken: 'h4...rf'
};

let reportContainer = $('#reportContainer')[0];
let report = powerbi.embed(reportContainer, embedConfiguration);