PostgreSQL 权限管理(六):RLS、审计与安全加固
一、为什么表权限还不够 普通权限控制的是: 1 某个用户能不能访问某张表 例如: 1 GRANT SELECT ON sales.orders TO report_user; 这表示 report_user 可以查询 sales.orders。 但很多企业场景需要更细的控制: 1 2 3 4 5 销售只能看自己区域的订单 医生只能看本科室病人的记录 租户只能访问自己的数据 分公司只能看本公司的财务数据 客服只能看被分配给自己的工单 这些不是“能不能访问表”的问题,而是: 1 能访问表里的哪些行 这就需要 PostgreSQL 的 RLS。 二、RLS 是什么 RLS 是 Row Level Security,行级安全。 表级权限控制: 1 能不能 SELECT orders 表 RLS 控制: 1 SELECT orders 时能看到哪些行 例如 orders 表中有字段: 1 2 3 tenant_id department_id owner_user RLS 可以根据当前会话、当前用户或应用设置的上下文,只返回符合条件的行。 ...