我目前的任务是制定一个监控数据库活动的行动计划,包括一般操作(登录失败等)和一些更细粒度的监控(例如谁从表 x 中选择了,SQL 语句是什么等)
在调查可以做什么的过程中,只需打开和调整 Oracle DB 审计似乎就能满足大多数(如果不是全部)要求,但需要仔细考虑性能。
但理想情况下,我想回去讨论一些建议,我的其他想法是生成表格触发器并将它们发送到其他“审计”模式,但这有点重新发明轮子的味道。
所以我想知道是否有人在这方面有经验,可以指出进一步阅读的方向/建议任何其他可行的替代方案
答案1
答案2
无论最终采用哪种解决方案,您提出的需要仔细监控性能的警告都是正确的。最重要的是,捕获和保存审计数据的过程将耗费您的资源(I/O、CPU、存储等)。
您说内置的 Oracle 审计满足了您的大多数(如果不是全部)要求。为什么需要考虑替代方案?想想 Oracle 已经花费了大量精力来优化审计,而这些审计都是由熟悉 Oracle 内部的人完成的。我非常怀疑大多数组织是否有足够的资源来做得更好。如果您自己开发,甚至使用第三方解决方案,请做好充分准备,您的组织支持审计,而不是审计支持您的组织。
如果是我,我会建议使用内置技术,如果有必要,可以内部构建一些东西来处理 Oracle 审计无法满足的要求。您可能还会考虑这些要求到底有多重要。
尽管如此,市场上还是有许多第三方工具。快速谷歌搜索产生了几种可能性。我注意到其中一个 (DB Tools for Oracle) 是通过为您生成触发器来工作的。