mysql - MySQL有类似Veil的插件吗?

标签 mysql security postgresql

我们有一个 MySQL 数据库,并希望在数据库级别实现行级安全性。我一直在使用 PostgreSQL 的 Veil 插件,并且喜欢它的功能。 MySQL 是否有类似的东西,所以我们不必转换到 PostgreSQL?

更新

与其说我们要使用 veil 或它的 MySQL 等价物来进行身份验证,不如说是为了确定要为已经通过身份验证的用户显示哪些行。用户权限基于关系上下文。在不考虑插件的情况下,如果用户权限基于具有 10 万行的表的多个连接,那么 View 的效率如何?最终目标是能够根据单个用户对使用相同查询的 100k> 行表中的行的权限向两个不同的用户显示不同的数据。

最佳答案

这不是一个常见的功能,主要是因为在大多数情况下,这不是该安全系统的正确位置。如果您可以提供有关您试图防御的确切攻击的更多详细信息,也许会有更合适的安全系统来满足此要求。

通常,您希望根据应用程序指定的访问控制列表实现来限制特定用户。在某些情况下,您希望两个应用程序共享相同的数据,并且希望限制其中一个应用程序遭到破坏的影响。在这种情况下,您可以将其拆分并为 1 个应用程序提供对数据库的读取访问权限,而另一个应用程序具有写入或读/写权限。使用像这样的数据库 native 访问控制可以在应用程序之间安全地传递信息。要防御的主要威胁是,如果 1 个应用程序因 SQL 注入(inject) 等漏洞而受到损害,那么两个数据库也会屈服于攻击。

还有sepgsql这对 PostgreSQL 也是如此。此安全系统可以用于更好地分离具有某些相关数据的应用程序,但这是一个非常不寻常的软件要求。一般来说,应避免使用此安全系统,而应使用其他更常见且经过验证的系统。

关于mysql - MySQL有类似Veil的插件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2670995/

相关文章:

php - 搜索关键字并应用过滤器

mysql - 如何从mysql数据库返回保存的实体

ios - iOS 应用程序的 SSL 证书

sql - 关于检查约束空值

java - 未找到 Postgresql + Hibernate 5 列但列存在

ruby-on-rails-3 - postgresql 版本不会改变默认版本

sql - mysql 在一个表中查询 WHERE 但在另一个表中不查询

mysql - 返回最接近值的列名

REST 安全性,使用基本身份验证加上 jwt token 验证是一种不好的做法吗?

javascript - 如果我有 div 中的数据,有人可以更改发送到服务器的数据吗