Power BI -使用托管身份从Azure SQL数据库获取数据

vc9ivgsu  于 2023-03-03  发布在  其他
关注(0)|答案(1)|浏览(133)

我有一个简单的场景,我有一个Azure SQL数据库,我想在Power BI报告中使用数据库中的数据。数据库服务器只启用了Azure AD身份验证。到目前为止,我设法使用自己的凭据创建和刷新了数据集(身份验证方法:OAuth2),但我希望有一个更通用的解决方案,不依赖于用户帐户。
是否可以为Power BI工作区启用托管身份并使用它连接到Azure SQL DB并获取数据?这样,Power BI将使用与其他Azure服务访问DB相同的模式。
如果Power BI管理的身份还不受支持,那么不使用用户帐户提取数据的最佳替代方案是什么?

50few1ms

50few1ms1#

如果Power BI管理的身份还不受支持,那么不使用用户帐户提取数据的最佳替代方案是什么?
AFAIK,只有Azure流分析作业支持托管身份作为Power BI的身份验证。
但作为一种解决方案,您可以使用Azure服务主体或Azure AD应用程序对连接到Azure SQL的Power BI数据集进行身份验证。
我创建了一个Power BI组,其中存在我的Azure AD服务主体和用户。
我连接到我的Azure SQL服务器与Powerbi如下:-

使用Azure SQL数据集创建了一个PowerBi报表,如下所示:-

上传到PowerBi网站:-

我有一个PowerBI嵌入组,其中有嵌入演示应用程序和用户谁可以访问Power BI如下:-

登录到我的Power BI Web门户〉设置〉管理门户〉租户设置

将允许嵌入设置设置为启用:-

允许服务主体使用Power BI并授予powerbiembedgroup访问权限。

为服务负责人提供对工作区或特定数据集的访问权限:-

通过Powershell访问PowerBI:-
安装PowerBI Powershell模块-

Install-Module -Name MicrosoftPowerBIMgmt

使用SP连接到PowerBI-

Connect-PowerBIServiceAccount -ServicePrincipal -Credential (Get-Credential) -Tenant xxxxxxxx-xxxx-xxexx-99ed-af9038592395

在"用户名和密码"中,添加服务主体的应用程序ID和密码。
已成功连接到PowerBI:-

把工作区-

Get-PowerBIWorkspace
    • 参考资料:-**

Embed Power BI content in an embedded analytics application with service principal and an application secret - Power BI | Microsoft Learn
Use Managed Identity to authenticate your Azure Stream Analytics job to Power BI output | Microsoft Learn

相关问题