다음을 통해 공유


Power BI 사용 시나리오: 고객용 포함

참고 항목

이 문서는 Power BI 구현 계획 시리즈의 일부를 구성합니다. 이 시리즈는 주로 Microsoft Fabric의 Power BI 환경에 중점을 둡니다. 시리즈에 대한 소개는 Power BI 구현 계획을 참조하세요.

이 사용 시나리오에서는 개발자가 고객용 사용자 지정 애플리케이션에 Power BI 콘텐츠를 프로그래밍 방식으로 포함하는 방법을 알아봅니다. (개발자가 Power BI 콘텐츠를 만들 책임이 반드시 있는 것은 아닙니다.) 고객용 Embed 시나리오는 애플리케이션 대상 사용자가 조직의 Power BI 콘텐츠에 액세스할 수 있는 권한 또는 적절한 라이선스가 없는 사용자로 구성된 경우에 적용됩니다. 사용자 지정 애플리케이션에는 Power BI 콘텐츠에 액세스할 수 있는 권한과 적절한 라이선스가 있는 포함 ID가 필요합니다. 사용자 지정 애플리케이션은 다중 테넌트 애플리케이션일 수 있습니다.

참고 항목

이 시나리오에서 Power BI는 PaaS(Platform-as-a-Service)입니다. 이 포함 시나리오를 앱 소유 데이터라고도 합니다.

시나리오 다이어그램

다음 다이어그램에서는 고객용 포함을 지원하는 가장 일반적인 사용자 작업 및 Power BI 구성 요소에 대한 개략적인 개요를 보여 줍니다.

다이어그램은 외부 애플리케이션에 콘텐츠를 통합하는 방법에 대한 고객 포함을 보여 줍니다. 다이어그램의 항목은 다음 표에 설명되어 있습니다.

프레젠테이션, 설명서 또는 블로그 게시물에 포함하려는 경우 시나리오 다이어그램을 다운로드하거나 벽 포스터로 인쇄하는 것이 좋습니다. SVG(확장 가능한 벡터 그래픽) 이미지이므로 품질 손실 없이 확장하거나 축소할 수 있습니다.

위의 다이어그램은 다음과 같은 사용자 작업, 도구 및 기능을 보여 줍니다.

Item 설명
항목 1. Power BI 콘텐츠 작성자는 Power BI Desktop을 사용하여 BI 솔루션을 개발합니다.
항목 2. 준비가 되면 콘텐츠 작성자는 Power BI Desktop 파일(.pbix) 또는 Power BI 프로젝트 파일(.pbip)을 Power BI 서비스 게시합니다.
항목 3. 일부 데이터 원본에는 개인 조직 네트워크 내에 있는 것과 같이 데이터 새로 고침을 위해 온-프레미스 데이터 게이트웨이 또는 VNet 게이트웨이가 필요할 수 있습니다.
항목 4. Power BI 작업 영역에는 포함할 준비가 된 Power BI 항목이 포함되어 있습니다. 포함 ID(서비스 주체 또는 마스터 사용자 계정)는 작업 영역 관리자 또는 멤버 역할에 속해야 합니다. 다중 테넌트 솔루션에서 테넌트마다 하나의 작업 영역을 만들면 테넌트를 분리할 수 있습니다. 이 디자인 패턴을 작업 영역 분리라고 합니다.
항목 5. 사용자 지정 애플리케이션은 임의의 인증 방법을 사용하여 앱 사용자에게 인증하라는 메시지를 표시합니다(반드시 Microsoft Entra ID(이전의 Azure Active Directory)를 사용하는 것은 아님).
항목 6. 인증에 성공하면 사용자 지정 애플리케이션은 포함 ID를 사용하여 Microsoft Entra 액세스 토큰을 획득하고 캐시합니다.
항목 7. 사용자 지정 애플리케이션은 Microsoft Entra 액세스 토큰을 사용하여 포함 ID를 대신해서 Power BI REST API를 호출합니다. 특히 애플리케이션은 액세스 토큰을 사용하여 작업 영역 항목에 대한 메타데이터를 검색합니다. 메타데이터에는 사용자 지정 애플리케이션에 콘텐츠를 포함하는 데 필요한 속성이 포함되어 있습니다. 또한 액세스 토큰을 사용하여 Power BI 콘텐츠에 대한 팩트와 애플리케이션에서 이를 액세스하는 방법을 나타내는 포함 토큰을 생성하고 캐시합니다.
항목 8. 사용자 지정 애플리케이션은 iframe HTML 요소에 특정 Power BI 항목을 포함합니다. 애플리케이션은 Power BI 보고서 만들기 및 편집을 지원하여 포함 ID에게 이 작업을 수행할 수 있는 권한을 제공할 수 있습니다.
항목 9. Power BI 관리자는 Power BI 서비스 활동을 감독하고 모니터링합니다.

핵심 내용

다음은 고객용 사용자 지정 애플리케이션에 Power BI 콘텐츠를 프로그래밍 방식으로 포함할 때 강조해야 할 몇 가지 핵심 사항입니다.

사용 사례

종종 고객용 포함은 ISV(독립 소프트웨어 공급업체)에서 이루어집니다. ISV는 앱에 분석을 포함할 필요성을 인식하고 있습니다. 분석을 포함하면 사용자는 상황에 맞는 인사이트에 직접 액세스하여 의견이 아닌 팩트를 기반으로 의사 결정을 내릴 수 있습니다. 시각화를 개발하는 대신 Power BI 콘텐츠를 포함하는 것이 일반적으로 더 빠르고 더 저렴합니다.

ISV는 각 고객이 테넌트가 되는 다중 테넌트 애플리케이션을 개발할 수 있습니다. Power BI 분석을 포함하는 다중 테넌트 앱은 외부 사용자가 앱 사용자에 포함되기 때문에 고객용 포함 시나리오를 사용할 것입니다. 다중 테넌트 애플리케이션은 이 문서의 뒷부분에서 자세히 설명합니다.

포함 가능한 콘텐츠

고객용으로 포함할 때 다음 Power BI 콘텐츠 형식을 포함할 수 있습니다.

  • Power BI 보고서
  • 특정 Power BI 보고서 시각적 개체
  • 페이지를 매긴 보고서
  • Q&A 환경
  • 대시보드
  • 특정 대시보드 타일

콘텐츠가 개인 작업 영역에 상주할 수 없다는 점을 제외하고는 콘텐츠가 있는 위치에 제한이 없습니다. 중요한 것은 포함 ID에게 콘텐츠를 보거나 만들거나 편집할 수 있는 권한이 있다는 것입니다.

인증

인증 흐름은 Microsoft Entra ID를 사용한 비대화형 인증(자동 인증이라고도 함)입니다. 비대화형 인증은 앱 사용자가 Power BI 계정을 가질 필요가 없으며, 있는 경우에도 사용되지 않음을 의미합니다. 따라서 포함 ID라고 하는 전용 Microsoft Entra ID는 Microsoft Entra ID로 인증됩니다. 포함 ID는 서비스 주체 또는 마스터 사용자 계정(나중에 설명)일 수 있습니다.

인증 흐름에서는 인증 서비스가 사용자에게 추가 정보를 묻는 메시지를 표시할 수 없는 방식으로 Microsoft Entra 토큰을 획득하려고 시도합니다. 앱 사용자가 앱에서 인증을 받으면(앱에서 임의의 인증 방법을 사용할 수 있음) 앱은 포함 ID를 사용하여 비대화형 인증 흐름에서 Microsoft Entra 토큰을 획득합니다.

앱이 Microsoft Entra 토큰을 획득하면 해당 토큰을 캐시한 다음, 포함 토큰을 생성하는 데 사용합니다. embed 토큰은 Power BI 콘텐츠 및 액세스 방법에 대한 팩트를 나타냅니다. 앱은 포함 토큰을 사용하여 iframe HTML 요소 내에 콘텐츠를 포함합니다.

서비스 사용자

앱은 서비스 주체를 사용하여 Microsoft Entra 토큰을 획득할 수 있습니다. Microsoft Entra 서비스 주체는 앱에서 사용하는 보안 ID입니다. Microsoft Entra 테넌트에서 앱에 대한 액세스 정책 및 권한을 정의하여 로그인하는 동안 앱 인증, 리소스 액세스 중 권한 부여와 같은 핵심 기능을 사용하도록 설정합니다. 서비스 주체는 앱 비밀 또는 인증서를 사용하여 인증할 수 있습니다. 서비스 주체는 서비스 주체가 Power BI API를 사용하도록 허용 테넌트 설정을 사용하도록 설정하고 서비스 주체가 허용된 그룹에 속하는 경우에만 Power BI REST API를 사용할 수 있습니다.

프로덕션 앱에 서비스 주체를 사용하는 것이 좋습니다. 이는 가장 높은 보안을 제공하며 이러한 이유로 Microsoft Entra ID에서 권장하는 접근 방식입니다. 또한 더 나은 자동화 및 스케일링을 지원하며 관리 오버헤드가 줄어듭니다. 그러나 설정 및 관리하려면 Power BI 관리자 권한이 필요합니다.

마스터 사용자 계정

앱은 마스터 사용자 계정을 사용하여 AD 토큰을 획득할 수 있습니다. 마스터 사용자 계정은 일반 Microsoft Entra 사용자입니다. Power BI에서 계정은 작업 영역 콘텐츠를 포함하려면 작업 영역 관리 또는 멤버 역할에 속해야 합니다. 또한 Power BI Pro 또는 Power BI PPU(사용자 단위 Premium) 라이선스가 있어야 합니다.

참고

마스터 사용자 계정을 사용하여 페이지를 매긴 보고서를 포함할 수 없습니다.

ID 포함에 대한 자세한 내용은 Power BI 콘텐츠를 포함할 수 있는 권한 설정을 참조하세요.

라이선스

고객용 Power BI 콘텐츠를 포함할 때는 콘텐츠가 다음 라이선스 모드 중 한 가지를 가진 작업 영역에 상주하도록 해야 합니다.

  • 프리미엄 용량: 이 라이선스 모드는 Power BI Premium에서 사용할 수 있습니다.
  • 포함: 이 라이선스 모드는 Power BI Embedded에서 사용할 수 있습니다.
  • 패브릭 용량: 이 라이선스 모드는 Microsoft Fabric에서 사용할 수 있습니다.

Important

때때로 이 문서는 Power BI Premium 또는 P SKU(용량 구독)를 참조합니다. Microsoft는 현재 구매 옵션을 통합하고 용량 SKU당 Power BI Premium을 사용 중지하고 있습니다. 신규 및 기존 고객은 F SKU(패브릭 용량 구독)를 대신 구매하는 것을 고려해야 합니다.

자세한 내용은 Power BI Premium 라이선스Power BI Premium FAQ에 제공되는 중요 업데이트를 참조하세요.

각 라이선스 모드 옵션을 사용하려면 용량 기반 라이선스인 청구 가능한 제품을 구매해야 합니다. 용량 기반 라이선스를 사용하면 예약된 용량을 만들 수 있습니다.

용량은 보고서 렌더링 및 데이터 새로 고침과 같은 워크로드를 처리하는 데 필요한 계산 리소스를 나타냅니다. 예약된 용량은 다른 고객의 워크로드와 격리되므로 신뢰할 수 있고 일관된 성능을 제공할 수 있는 스케일링을 제공합니다.

참고 항목

Fabric(무료), Power BI Pro 또는 Power BI PPU 라이선스가 있는 프로덕션 환경에서는 고객용 포함 시나리오를 사용할 수 없습니다.

제품 및 라이선스에 대한 자세한 내용은 적절한 Power BI 임베디드 분석 제품 선택을 참조하세요.

Power BI 클라이언트 API

Power BI 클라이언트 API를 사용하면 개발자가 사용자 지정 애플리케이션과 Power BI 콘텐츠 간에 긴밀하게 통합할 수 있습니다. 브라우저에서 실행되는 JavaScript 또는 TypeScript를 통해 사용자 지정 논리를 작성하여 애플리케이션을 개발합니다.

애플리케이션은 작업을 설정하고 자동화할 수 있으며 사용자가 시작한 작업에 응답할 수 있습니다. 또한 탐색, 필터 및 슬라이서, 메뉴 작업, 레이아웃, 책갈피를 포함한 Power BI 기능을 통합할 수 있습니다.

Power BI Embedded Analytics 플레이그라운드는 Power BI 임베디드 분석을 배우고 살펴보고 실험해 볼 수 있는 웹 사이트입니다. 샘플 Power BI 콘텐츠 또는 사용자 고유의 콘텐츠와 함께 클라이언트 API를 사용하는 실습 환경을 위한 개발자 샌드박스가 포함되어 있습니다. 코드 조각 및 쇼케이스도 살펴볼 수 있습니다.

자세한 내용은 Power BI 임베디드 분석 플레이그라운드란?을 참조하세요.

데이터 사용 권한 적용

앱 사용자가 데이터의 하위 집합을 볼 수 있는 액세스 권한을 가져야 하는 경우 Power BI 의미 체계 모델(이전에는 데이터 세트라고 함) 데이터에 대한 액세스를 제한하는 솔루션을 개발해야 합니다. 그 이유는 일부 사용자가 다른 판매 지역의 판매 결과와 같은 특정 데이터를 볼 수 있도록 허용되지 않기 때문일 수 있습니다. 이 요구 사항을 달성하려면 일반적으로 모델 데이터를 필터링하는 역할 및 규칙을 정의하는 RLS(행 수준 보안) 설정이 포함됩니다.

고객용 시나리오를 사용하는 경우 앱은 데이터에 대한 액세스를 제한하기 위해 포함 토큰의 유효 ID를 설정해야 합니다. 이 유효 ID에 따라 Power BI가 모델에 연결하는 방법과 RLS 역할을 적용하는 방법이 결정됩니다. 효과적인 ID를 설정하는 방법은 Power BI 의미 체계 모델의 형식에 따라 다릅니다.

포함된 콘텐츠의 RLS 역할에 대한 자세한 내용은 Power BI 임베디드 분석에 대한 데이터 권한 적용을 참조하세요.

다중 테넌트 애플리케이션

여러 조직은 다중 테넌트 앱을 사용할 수 있으며, 여기서 각 조직은 하나의 테넌트입니다. Power BI 분석을 포함하는 다중 테넌트 앱은 외부 사용자가 앱 사용자에 포함되기 때문에 고객용 포함 시나리오를 사용할 수 있습니다. 다중 테넌트 앱을 디자인할 때 두 가지 테넌트 모델 중에서 선택할 수 있습니다.

권장되는 방법은 작업 영역 분리 모델을 사용하는 것입니다. 각 테넌트에 대해 하나의 Power BI 작업 영역을 만들어 이 방법을 구현할 수 있습니다. 각 작업 영역에는 해당 테넌트와 관련된 Power BI 아티팩트가 포함되어 있으며 의미 체계 모델은 각 테넌트에 대한 별도의 데이터베이스에 연결됩니다.

작업 영역 분리 모델에 대한 자세한 내용은 작업 영역 분리 자동화를 참조하세요. 확장 가능한 다중 테넌트 앱에 대한 자세한 내용은 Power BI Embedded의 다중 테넌시 앱에 대한 서비스 주체 프로필을 참조하세요.

또는 단일 다중 고객 데이터베이스 모델을 사용할 수 있습니다. 이 모델을 사용하는 경우 솔루션은 모든 테넌트에서 공유되는 Power BI 항목 세트가 포함된 단일 작업 영역으로 분리합니다. 의미 체계 모델에 정의된 RLS 역할은 조직이 자신의 데이터만 볼 수 있도록 데이터를 보다 안전하게 필터링하는 데 도움이 됩니다.

코드 없는 포함

프로그래밍 방식 솔루션을 개발하려면 기술, 시간 및 노력이 필요합니다. 개발자 이외의 사용자가 Power Pages에 Power BI 보고서 또는 대시보드를 포함하는 데 사용할 수 있는 코드 없는 포함이라는 포함 기술이 있다고 생각해 보세요.

게이트웨이 설정

일반적으로 프라이빗 조직 네트워크 또는 가상 네트워크 내에 있는 데이터 원본에 액세스할 경우 데이터 게이트웨이가 필요합니다. 게이트웨이의 두 가지 목적은 가져온 데이터를 새로 고치거나 라이브 연결 또는 DirectQuery 의미 체계 모델을 쿼리하는 보고서를 보는 것입니다.

참고 항목

표준 모드의 중앙 집중식 데이터 게이트웨이개인 모드의 게이트웨이보다 강력하게 권장됩니다. 표준 모드에서 데이터 게이트웨이는 라이브 연결 및 DirectQuery 작업(예약된 데이터 새로 고침 작업 외에도)을 지원합니다.

시스템 감독

활동 로그는 Power BI 서비스에서 발생하는 사용자 활동을 기록합니다. Power BI 관리자는 수집된 활동 로그 데이터를 사용하여 사용 패턴 및 채택을 이해하는 데 도움이 되는 감사를 수행할 수 있습니다.

Power BI 임베디드 분석에 대해 자세히 알아보려면 Embed Power BI 분석 학습 경로를 참조하세요.

Power BI 개발자 하루에 끝내기 과정을 진행할 수도 있습니다. 이 과정에는 ASP.NET Core MVC 앱을 개발하는 프로세스를 안내하는 자율 학습 키트가 포함되어 있습니다.

Power BI 구현 결정에 도움이 되는 다른 유용한 시나리오는 Power BI 사용 시나리오 문서를 참조하세요.