ITPub博客

首页 > 数据库 > 数据库开发技术 > YashanDB 权限管理进阶|三权分立机制详解与实操指南

YashanDB 权限管理进阶|三权分立机制详解与实操指南

原创 数据库开发技术 作者:makabala 时间:2025-05-06 11:28:07 0 删除 编辑

数据库权限越大,责任越重。为了防止某一管理员过度集中权限,YashanDB 提供了三权分立(Separation of Duty)机制,从源头上避免“超级管理员一人管天下”的风险。

什么是三权分立?

所谓三权分立,指的是将数据库管理员的权限进行细化划分,分别赋予不同角色。这样可以:

限制单一用户具备“修改、审计、安全”三类能力;

防止越权操作或误删误改;

提高整体系统安全性和可审计性。

YashanDB 内置三类管理角色

YashanDB 内置了以下三类关键权限角色,便于根据职责划分授权:

DBA:负责数据库运维和管理;

AUDIT_ADMIN:负责审计策略创建与查询;

SECURITY_ADMIN:负责权限授予、回收和账户安全。

如何启用三权分立?

默认情况下,三权分立机制是关闭的。需要通过参数开启:

ALTER SYSTEM SET ENABLE_SEPARATE_DUTY=TRUE SCOPE=SPFILE;

注意: 该参数为启动参数,修改后需重启数据库生效。

操作演示:三权分立行为验证

1. 创建用户并赋权

CREATE USER user1 IDENTIFIED BY "user1";
CREATE USER user2 IDENTIFIED BY "user2";
CREATE USER user3 IDENTIFIED BY "user3";
GRANT DBA TO user1;
GRANT AUDIT_ADMIN TO user2;
GRANT SECURITY_ADMIN, RESOURCE TO user3;

2. 开启前测试权限(未开启三权分立)

user1 可执行权限授权、审计策略创建;

user2 只能做审计相关操作,不能授权;

user3 只能授权权限,无法操作审计策略。

3. 启用三权分立并重启数据库

-- 以 SYSDBA 身份执行

ALTER SYSTEM SET ENABLE_SEPARATE_DUTY=TRUE SCOPE=SPFILE;
SHUTDOWN IMMEDIATE;
STARTUP;

4. 启用后再测试

user1 的权限被限制, 无法执行授权与审计操作;

user2 保持只可操作审计策略;

user3 仍然只可授权,不可操作审计策略;

普通用户权限不受影响,可正常建表等操作。

使用建议

为不同职能人员分配对应角色,避免权限滥用;

建议大型企业、政务机构等启用此机制提升内控安全;

各角色权限可通过 DBA_ROLE_PRIVS 视图查询确认。

总结

YashanDB 的三权分立机制,从系统层面划清了管理职责边界,有效减少因误操作或权限滥用带来的风险。它不仅是一种权限控制策略,更是一种数据库治理理念。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70045450/viewspace-3083237/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2025-04-10

  • 博文量
    231
  • 访问量
    229296