提问人:user3833732 提问时间:11/2/2023 最后编辑:philipxyuser3833732 更新时间:11/16/2023 访问量:31
MySQL连接和来自不同部门的多个用户?
MySQL connections and multiple Users from different Departments?
问:
我有2个部门--
- 具有 100 个用户的 Marketing(他们仅适用于 Marketing 表。
- 具有 200 个用户的 Factory(他们仅适用于 Factory 表。
我在 MySQL 中建立了 2 个连接。
每个部门的用户将从各自位置使用来自 Java 客户端的相应连接。
如何让所有营销人员从其 Java 客户端使用相同的连接字符串?
在任何时候,至少有 100 人在线,每个人都通过自己的笔记本电脑连接。我只问MySQL;在 Java 方面,线程不是问题。
如何禁止 MarketingDept 用户查看/读取/写入 Factory 表,并禁止 FactoryDept 用户查看/读取/写入 Marketing 表?
如何允许 MarketingDept 的人员在 MarketingTable 的记录中编辑其详细信息?
例如,某种行级安全性。我觉得这很麻烦,因为连接时唯一一种身份验证是部门级别,而不是用户级别。
答:
-2赞
Rick James
11/16/2023
#1
GRANTs
和 和 .以下是一些帮助您入门的提示。ROLEs
VIEWs
“角色”是“权限的命名集合”。它允许您为部门的每个成员提供自己的登录名,以及该部门的“角色”。
每个 Dept“角色”(一个用于 MarketingDept,等)将授予或拒绝对这些视图的各种列的读取或写入访问权限。VIEWs
例如,视图将被设计为排除基础的列,从而阻止该连接甚至读取该列的内容。TABLE
视图或列上的 A 可以表示 、 、 、 。这些对应于受赠人所允许的内容。GRANT
SELECT
INSERT
UPDATE
DELETE
MariaDB 10.0.5 (2012) 和 MySQL 8.0 (2016) 中添加了“角色”。如有必要,请升级。研究文档。
评论