作为IT安全审计的一部分,数据库权限审核也应该包括在其中。一般情况下,数据库管理员应该定期发送权限报告给相关人员审核,确保这是一个持续性完善的过程。
当然,作为持续性改善计划,肯定需要python来自动化实现了,人都是有惰性,谁能保证一直做下来不出错?
下面跟大家分享一下笔者通过python实现SQL SERVER数据库权限审计的方法吧。
先分享一下报告的主要审核点,一般而言,权限审计,审的就是哪个权限,对应有哪些人之类的。
从上图可以看出,在数据库中对用户赋予了权限,都可以清楚的看出来,然后定期的发送给对应Business Owner即可。
设计方法如下:
select DbRole = g.name, MemberName = u.name, MemberSID = u.sid from sys.database_principals u, sys.database_principals g, sys.database_role_members m where g.principal_id = m.role_principal_id and u.principal_id = m.member_principal_id order by 1, 2
在这个语句中,可以手工查询到指定数据库的用户权限。
备注:如果涉及到sql connectionstring的密码问题,可以将py文件通过pyinstaller进行打包。当然如果要求更高的话,就需要加密打包,通过外部python模块来实现了。
小结:这个方法感觉是不是很简单?其实对数据库的常规操作都可以通过这样的方式实现自动化,比如数据库大小监控,当然,如果有整体的性能监控除外。也可以实现数据库空间报警等,具体的就看大家的需求了,思路是一样的。盖以抛砖引玉,希望能有更多的延伸。
本文发布于:2024-02-03 00:52:48,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170689277247588.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |