Power BI桌面查询参数,第2部分,动态数据屏蔽和查询参数

Power BI桌面和SQL Server动态数据屏蔽

如我所承诺 我以前的帖子,在本文中,我将向您展示如何在SQL Server 2016动态数据屏蔽(DDM)之上使用查询参数来利用Power BI Desktop模型。我还将非常简要地说明如何从AdventureWorksDW2016CTP3数据库的DimCustomer表上启用DDM。然后,我们将在DimCustomer表顶部创建带有查询参数的Power BI Desktop模型。您还将学习如何创建Power BI模板,以便将来在部署时使用它。

注意: 如果您想了解有关使用列表输出的信息 Power BI Desktop的“查询参数”中的内容可以看一下这些系列的下一篇文章“Power BI桌面查询参数,第3部分,列表输出“.

用例

在里面 以前的帖子 我解释了如何使用查询参数创建动态数据源。您还学习了如何在过滤器行中使用查询参数。在这篇文章中,您将学习:

  1. 在SQL Server动态数据屏蔽(DDM)之上使用查询参数
  2. Power BI模板中的查询参数

要求

就像 Power BI查询参数的第1部分,您需要满足以下要求才能关注此职位:

  1. 最新版本 Power BI桌面 (版本:2.34.4372.322 64位(2016年4月)或更高版本)
  2. SQL服务器 2016(您可以免费下载SQL Server 2016 Developer Edition)
  3. AdventureWorksDW

定义

我不会提供有关DDM的太多详细信息,因为您会发现很多信息 这里。但是,为了让您稍微熟悉一下动态数据屏蔽,我将对其进行简要说明。

动态数据屏蔽(DDM)

动态数据屏蔽(DDM)是SQL Server 2016和Azure SQL数据库中可用的一项新功能。 DDM基本上是一种防止敏感数据暴露给非特权用户的方法。它是一项数据保护功能,可将敏感数据隐藏在查询的结果集中。您可以轻松地在现有表上启用DDM,也可以在要创建的新表上启用DDM。假设您的零售数据库中有两组用户。销售人员和销售经理。您有一张客户表,在此帖子中,它是AdventureWorksDW2016CTP3的DimCustomer。该表包含敏感数据,例如客户的电子邮件地址,电话号码及其居住地址。根据您的公司政策,“销售人员”组的成员应该不能查看敏感数据,但是应该可以查看所有其他数据。另一方面,“销售经理”组的成员可以查看所有客户的数据。为了防止销售人员看到敏感数据,您可以在DimCustomer表的敏感列上启用动态数据屏蔽。在这种情况下,当销售人员查询表时,他/她将看到被屏蔽的数据。例如,他看到 [email protected] 而不是 [email protected].

在某些列上使用DDM创建表

很简单,只需将“屏蔽方式(功能=“屏蔽功能”)列定义中的“”。所以它应该看起来像这样:

创建表Table_Name  (ID int IDENTITY主键,   Masked_Column1 varchar(100)屏蔽有(FUNCTION =‘Mask_Function’),   Masked_Column2 varchar(100)屏蔽有(FUNCTION =‘Mask_Function’),

 

)

更改现有表并在所需列上启用DDM

如您所料,您必须使用“更改表“ 然后 ”更改列”。您的T-SQL应该如下所示:

更改表 Table_Name 更改列 Column_Name1添加了屏蔽功能(功能=“屏蔽功能”);

更改表 Table_Name

Column_Name2添加掩码(功能=“掩码功能”);

有关更多信息,请参阅 MSDN.

Power BI模板

模板基本上是Power BI文件,它代表预定义Power BI Desktop的实例,该实例包括数据模型,报表,查询和参数的所有定义,但不包括任何数据。创建Power BI模板是简化现有模型部署的好方法。创建模板非常容易,您只需单击文件-> Export –>Power BI模板。我们将通过本文更详细地介绍这一点。

情境

要求您对客户的数据(AdventureWorksDW2016CTP3数据库上的DimCustomer)实施更高级别的安全性,以便只有特权用户才能看到客户的电子邮件,电话号码和居住地址。特权用户是“ SalesManager”数据库角色的所有成员。还要求您阻止“ SalesPerson”数据库角色查看敏感数据。但是,“ SalesManager”和“ SalesPerson”数据库角色的所有成员都可以查询DimCustomer表。用户不应具有SQL Server登录名。

继续阅读 “Power BI桌面查询参数,第2部分,动态数据屏蔽和查询参数”