数据安全与QlikView应用的节访问控制

在当今信息技术快速发展的时代,数据安全成为了任何组织,尤其是数据驱动型组织最关心的问题之一。想象一下,如果存储和展示所有业务关键决策信息的QlikView应用落入错误的人手中,可能会发生什么?因此,保护数据不被未授权访问变得至关重要。

节访问控制的介绍

节访问控制是QlikView(以及现在的Qlik Sense)提供的一种功能,用于控制谁可以查看哪些信息,哪些对象可以被谁查看,以及从哪个域查看等。这些设置可以通过QlikView发布者的帮助来完成。本文将讨论节访问控制,并展示如何将其应用于QlikView应用。

节访问控制是定义在加载脚本中的一部分,其中定义了一个授权表,即一个定义谁可以看到什么信息以及从哪里可以看到的表格。根据信息的敏感性和业务舒适度,节访问控制可以有多种类型:

  • 对于一些文档,简单的用户名和密码可能足以访问。
  • 在某些情况下,可能希望特定域中的特定用户在特定的机器上使用特定的密钥来解锁信息。
  • 可能还希望限制对文档中特定对象和工作表的访问。
  • 对于指定用户,可以从数据模型中移除字段(通过省略它们)。
  • 基于提到的授权进行行级数据缩减。

本文将仅涵盖行级数据缩减,并在未来的文章中讨论其他方法。

实施节访问控制前的事实

在实施节访问控制之前,有一些基本规则需要记住:

  • 备份应用程序,因为错误的语法会使文档无法访问,并且没有恢复数据或脚本的可能性。
  • 由外部源(如xlsx、txt等)加载的节访问控制数据(安全表)必须使用大写字母在节访问控制语句中加载。
  • 安全表包含多个用户特定的系统字段,如USERID、PASSWORD、ACCESS等基本系统字段。还可以组合多个字段来构建节访问控制解决方案,具体取决于所需的安全级别。(要了解更多关于系统字段的信息,请参考QlikView参考手册)。
  • 除了标准字段外,还可以定义额外的字段来管理每个用户的数据处理。

Sachin Dashboard的问题

对于为纪念Sachin的测试生涯而创建的Sachin Dashboard,希望限制用户只能看到他对特定国家的表现。查看下面的安全表,它定义了用户的权限。

可以看到,定义了10个用户,包括用户ID、密码、访问级别和AGAINSTCOUNTRY字段的值,这些用户需要访问。在上述表中,想讨论的一个关键点是节访问控制中的“*”。“*”表示所有值,即有权限查看表中列出的所有值的用户。如果值没有在安全表中列出,它将对任何人都不可用。

现在让将节访问控制应用到现有文档中。将按照以下步骤进行:

  1. 创建现有文档的副本,以防出现问题,有备份。
  2. 由于将根据Against_Country字段对行级数据应用限制,因此首先确保它以大写形式存在。在这里,已经将其转换为大写(对原始表所做的更改)。
  3. 添加一个新标签,并编写脚本导入安全表,然后使用内联表或外部文件使用节访问控制语句。(使用外部文件进行此操作)。
  4. 保存文档,然后转到设置 ——> 文档属性 ——> 打开标签,并勾选“基于节访问控制的初始数据缩减”和“严格排除”的复选框。
  5. 保存并重新加载。重新加载后关闭仪表板。
  6. 现在打开仪表板,它将要求用户识别,并且根据用户权限,将能够看到结果。

在本文中,看到了如何使用节访问控制限制用户对行级数据的限制。还查看了在开发或交付仪表板时应该考虑的安全功能。建议在与任何人共享文档之前应用安全功能。

在未来,还将讨论其他安全功能,如NT域识别、文档属性(工作表、对象)、字段级安全等。它还提供了一个如何使用命名约定来构建解决方案的示例,该解决方案更加健壮,降低了QlikView文档的维护成本。

照片1致谢:Yuri Yu. Samoilov via photopin cc数据安全内联表 Qlikview 行级过滤 节访问控制 S

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485