MYSQL访问控制



我想实现对存储在我的MySQL数据库中的数据列级和行级访问控制。我在服务器上使用NodeJS,该怎么做?我看到SAP Hana允许,但想保留MySQL

您可以采用以下三种方法:

  1. 在应用程序内执行
  2. 在应用程序和db之间进行,在db代理中
  3. 在数据库内执行

第一个选项实际上不符合行级访问控制的条件,因为应用程序逻辑负责过滤/屏蔽。(过滤是行级访问控制,而屏蔽是单元级访问控制)。

第二个选择,使用代理,是一种越来越被采用的方法。有专门的解决方案,如:

  1. GreenSQL
  2. Informatica DDM和
  3. Axiomatics Data Access Filter.

这些解决方案通常拦截SQL流量并对其进行修改,以便只返回授权的数据。这称为动态数据屏蔽。在维基百科上有更多的解释。

第三个选项是使用数据库的本地功能。例如,Oracle有一个叫做虚拟私有数据库(VPD)的东西,它可以让你配置高级的行过滤功能。

在您的情况下(MySQL),有一些叫做细粒度访问控制 (FGAC)。这里有一篇关于这个话题的好文章。

最新更新