You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

拥有低级别数据权限的角色能否推断表中存在高级别数据?

数据库权限与数据推断问题

表结构与数据

创建表语句

CREATE TABLE Farm (
    ID INT,
    Name CHAR(1),
    Contents VARCHAR(255),
    Level VARCHAR(50)
);

插入数据语句

INSERT INTO Farm (ID, Name, Contents, Level)
VALUES 
(1, 'A', 'Cats', 'Low'),
(1, 'B', 'Dogs', 'Low'),
(1, 'C', 'Lions', 'High'),
(1, 'D', 'Pups', 'Low');

权限设置与问题

  • 角色A拥有Farm表的全部访问权限
  • 角色B仅拥有Farm表中Level为'Low'的行的全部权限

问题:分配到角色B的用户是否有可能推断出表中存在Level为"High"的记录?(注:用户可通过ID键关联其他表)

分析结论

角色B只能访问包含'Low'级别数据的视图,无法直接查看Level为'High'的行。仅通过该视图执行COUNT(*)这类操作,只能得到Low级别的行数,无法直接得知是否存在High级别的记录。

但如果存在其他通过ID关联的表,且角色B能访问该关联表的完整数据,情况会发生变化:比如关联表中ID=1的记录数多于角色B在Farm视图中看到的3条,用户就能推断出Farm表中存在其他Level的记录(比如High)。不过如果没有这类额外的关联数据支撑,仅靠自身能访问的Farm视图,角色B无法推断出存在Level为'High'的记录。


内容的提问来源于stack exchange,提问作者0xfffe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 02:16:05