数据库字段可以公开吗

数据库字段可以公开吗,第1张

数据库字段不能完全公开,需要根据数据安全策略进行控制。数据库中的字段包含了重要的信息,公开会导致重大的安全隐患。因此,数据库管理员根据数据安全策略对字段进行控制。例如,对于敏感信息,可以设置访问权限,只有特定用户可以查看和修改。也可以使用加密技术来保护数据库字段。总之,数据库管理员根据数据安全策略来控制字段的访问权限,来确保数据的安。

个人觉得提的问题范围有些大,如果只针对案例要解决这个问题很简单,只需要设置部门,个人的使用权限即可,权限都是叠加的,比如A员工只能查看A部门的工资,只需将A部门权限给a员工即可,部门隶属权限都具备了这都不是问题了.

如果是企业级系统涉及多模块及业务数据的权限控制的话,就需要设计独立的数据权限模块才能做到架构层面解决了,可对表级设置权限策略.

建议通过phpMyAdmin 来设置数据库用户的权限。phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。

一、首先您需要在服务器上安装配置 phpMyAdmin。

安装比较复杂,详见http://faq.comsenz.com/viewnews-484

二、创建用户(如之前已经创建好用户,可以省略这一步)

点击“添加新用户”这个连接,添加一个新的数据库用户名;

三、权限设置

编辑刚刚创建的用户的权限(如下图所示)

四、重新加载授权表

修改完用户权限以后需要回到 phpMyAdmin 的首页,重新加载一下授权(如下图)即可。

一、方式一:使用视图

将需要限制用户只能看到特定的几个列、设置成一个视图,然后对这个视图进行权限控制

二、方式二:使用GRANT语句

1、授予相关列的查询权限(SELECT)

在数据库db1中,登录名UserA 只能有权限查询 Employee表 里面的BusinessEntityID, NationalIDNumber, LoginID三个字段权限,不能查询其它字段

GRANT SELECT(BusinessEntityID, NationalIDNumber, LoginID) ON Employee TO UserA

2、授予相关列的修改权限(Update)

对于登录名UserB,只允许其修改 Address表 的AddressLine1,AddressLine2两个字段,其它字段不许修改

GRANT UPDATE(AddressLine1,AddressLine2) ON Address TO UserB

3.

DENY SELECT(Phone) ON T_SendSMSLog TO test 禁止某个用户查询某个表的某列


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9898551.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存