다음을 통해 공유


다양한 포함 솔루션 이해

Power BI 항목(예: 보고서, 대시보드 및 Q&A)을 애플리케이션에 포함하면 사용자 고유의 데이터 시각화 및 컨트롤을 처음부터 빌드하지 않고도 뛰어난 완전한 대화형 분석을 통합할 수 있습니다. 포함하는 Power BI 분석은 앱이 소유한 데이터를 고유한 Power BI 계정을 통해 또는 사용자가 소유한 데이터를 Power BI 계정을 통해 표시할 수 있습니다.

애플리케이션 시나리오

애플리케이션에 Power BI 보고서를 포함하기 위한 두 가지 시나리오가 있습니다.

  • 조직 포함(사용자 소유 데이터이라고도 함): 애플리케이션을 사용하면 조직의 사용자가 자신의 Power BI 계정을 사용하여 로그인할 때 액세스할 수 있는 데이터, 보고서, 대시보드 및 타일을 통합할 수 있습니다. 이 유형의 애플리케이션에서는 사용자가 포함하는 데이터를 소유합니다.
  • 고객 포함(앱 소유 데이터이라고도 함): 애플리케이션은 Power BI 계정에 업로드한 데이터, 보고서, 대시보드 또는 타일을 제공합니다. 이 유형의 애플리케이션에서는 사용자 고유의 계정을 사용하므로 애플리케이션이 고객에 대한 데이터를 소유합니다. 고객은 자체 Power BI 계정이 필요하지 않습니다.

사용하는 애플리케이션 시나리오는 데이터에 액세스하고 애플리케이션에 콘텐츠를 포함할 수 있는 액세스 토큰 검색하는 방법을 결정합니다.

포함하는 콘텐츠의 형식은embedUrl 매개 변수의 값으로 지정됩니다. 특정 유형의 콘텐츠에 대한 포함 URL을 검색하려면 해당 Power BI REST API를 호출합니다. 예를 들어 보고서 가져오기 호출하여 보고서를 포함하기 위한 포함 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 항목에 액세스할 수 있는 전용 ID를 만듭니다. 그런 다음 Power BI REST API 포함 토큰호출하여 포함하려는 보고서, 대시보드 또는 타일에 대한 포함 토큰 생성합니다. 포함된 토큰있으면 다음 코드를 사용하여 보고서를 포함합니다.

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);