如何使用逻辑应用修改 Azure 分析服务角色?

Posted

技术标签:

【中文标题】如何使用逻辑应用修改 Azure 分析服务角色?【英文标题】:How Modifying Azure Analysis services roles using a logic app? 【发布时间】:2020-05-07 10:23:10 【问题描述】:

使用 Azure 数据工厂,我已经构建了一个管道,以通过article 中所述的专用逻辑应用程序来协调我的 Azure 分析服务模型的处理,并且它可以正常工作。

现在,总是使用 Azure 数据工厂(通过逻辑应用程序),我希望我也可以更新特定角色的用户列表。

在上述文章中,为了处理 Azure Analysis Services 模型,逻辑应用调用具有以下格式的特定 API:

https:// <rollout>.asazure.windows.net/servers/<serverName>/models/<resource>/refreshes

但此 API 似乎不适用于更新模型的角色。

是否有人知道使用特定逻辑应用更新模型角色的正确方法?

感谢您的任何建议

【问题讨论】:

您可以通过此处列出的详细信息修改角色:docs.microsoft.com/en-us/azure/analysis-services/… 如果您想完全在 Logic App 中执行此操作,则需要让它触发其中一个流程。 @iamdave 抱歉,我不明白您的评论。该链接指定如何手动管理角色。我可以手动修改 Analysis Services 中的数据库角色,但是这个链接对我有什么帮助?问题是如何在 Logic App 中自动执行此过程? 您需要编写一种方法来将该文章中详述的命令发送到您的服务器,然后从您的逻辑应用程序调用此服务。据我所知,没有无代码的解决方案。 【参考方案1】:

如果您不一定需要为此使用逻辑应用,我认为可以使用 Azure 自动化和 powershell cmdlet 来管理 azure 分析服务:

https://docs.microsoft.com/en-us/azure/analysis-services/analysis-services-refresh-azure-automation

https://docs.microsoft.com/en-us/azure/analysis-services/analysis-services-powershell

https://docs.microsoft.com/en-us/powershell/module/sqlserver/Add-RoleMember?view=sqlserver-ps

【讨论】:

【参考方案2】:

另一种方法可能是将固定 AD 组作为表格模型角色的成员,并从这些 AD 组中添加/删除成员。因此,不需要刷新表格模型角色,只需在 AD 组中添加或删除成员,作为治理过程的一部分。

第二种方法是使用动态行级安全性。使用逻辑应用完全可以将记录添加到 Azure SQL DB 表,并可用于提高安全性,具体取决于您的要求。然后,您可以使用逻辑应用刷新您的安全维度。有关详细信息,请参见此处:

https://docs.microsoft.com/en-us/power-bi/desktop-tutorial-row-level-security-onprem-ssas-tabular

然而,要回答您的问题,Azure 分析服务 REST API 很有用,但功能并不完整,即它不包含表格模型或服务的所有可能操作。我发现的另一个缺失示例是备份,即虽然可以触发服务的暂停或恢复,但无法通过 REST API 触发表格模型的备份。我不相信改变角色成员是可能的,或者至少,该操作未在 REST API 中列出,但如果我错了,很高兴得到纠正。更具体地说,Roles 未在可用对象列表中提及,可用对象列表可以使用POST / Refreshes 传递到 Objects 数组,例如here。 tablepartition 是我唯一知道的。

MS github 站点上也没有示例:

https://github.com/microsoft/Analysis-Services

最后,考虑在 Azure 函数中通过 Powershell 调用 TMSL,您可以从 Azure 数据工厂调用该函数。

HTH

【讨论】:

以上是关于如何使用逻辑应用修改 Azure 分析服务角色?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Azure 逻辑应用添加或修改 blob 时如何获取上传文件的文件名?

如何使用标准 Azure 逻辑应用的无状态工作流可靠地处理 Azure 服务总线消息

分析 Azure 辅助角色

Azure 应用服务能够使用托管标识(无应用角色)调用另一个受 AAD 保护的应用服务,为啥?

如何解析Azure IOT中心逻辑应用程序中的消息

使用 azure 逻辑应用程序将消息作为字符串发送到 azure 服务总线