人大金仓数据库KingbaseES 角色启动禁用功能总结经验分享

89 阅读2分钟

关键字:

安全;角色启动禁用;;人大金仓;KingbaseES

概述

在不删除角色的前提下,在本地库内使角色失效, 使失效的角色再生效。详见插件 roledisable 。

特性实际操作

修改 kingbase.conf 文件中 shared_preload_libraries 参数,并重启。

shared_preload_libraries = 'roledisable'

登录,加载插件

create extension roledisable;

SYSTEM 可以通过 roledisable.sys_role_status 视图来查看系统所有角色在当前库内的启用/禁用状态。

SELECT * FROM roledisable.sys_role_status;

启用角色 ALTER ROLE rolename ENABLE;

禁用角色 ALTER ROLE rolename DISABLE;

使用经验及注意事项

可以对着安全手册和插件手册 roledisable 插件查看详细信息。

价值评价

此功能的作用:

• 当角色被禁用后,断开权限继承关系,不能从该角色直接和间接继承权限,间接使用被禁用角色的权限时应该报角色被禁用或权限错误。

• 以 SET ROLE 切换到被禁用的角色时报告错误。

• 当会话使用的系统管理员角色被禁用时,因系统管理员绕过权限检查因此不会对其造成权限的影响。

• 当前会话使用的非系统管理员角色被禁用时,被禁用角色对权限继承关系产生影响因缓存机制可能不会立即生效,当切换角色权限检查或重新登录后生效。

• 角色在使用期间被禁用时,以被禁用角色(非系统管理员)执行需检查权限的操作时,报当前角色被禁用错误。

• 角色被禁用状态下,可以修改角色权限和角色关系。如使用 GRANT 和 REVOKE 对其操作,使用 ALTER ROLE 对其操作。

方便管理员进行管理,解决了特定场景下的要求。

参考资料

《KingbaseES 安全指南》