问题标签 [audit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2259 浏览

mysql - MySQL Trigger based Audit logging with comparisons

在查看类似的问题时:

获取触发器以仅在审计表中插入更改的列值

审计日志策略

我想更进一步,比较更新的数据,看看它是否真的更新了……我不确定这是否理想(性能方面)。

背景:

我们有一些由用户定期更新的数据。

当这些数据更新时,我想将他们提交的内容与已经存在的内容以及他们提交的内容进行比较,以确保发生了变化。

如果发生更改,请继续将审计条目写入中央审计​​历史表,概述更改的字段。

想法/想法?我尽力搜索,但运气不佳。如果它是重复的,我很乐意删除这个问题。

谢谢!

0 投票
2 回答
3797 浏览

nhibernate - NHibernate 拦截器审计插入的对象 ID

我正在使用 NHibernate 拦截器将有关更新/插入/删除的信息记录到我的各种实体中。

记录的信息中包括实体类型和已修改实体的唯一 ID。<generator class="identity">唯一 ID在 NHibernate 映射文件中标记为 a 。

明显的问题是当使用 IInterceptor.OnSave() 记录插入操作时,尚未分配实体的 ID。

如何在记录审计信息之前获取插入实体的 ID?

(我已经查看了 NHibernate Listeners PostSave 事件,但无法让它们与正在使用的 Spring.net 配置一起工作,所以如果可能的话,我想坚持使用拦截器)

代码:

0 投票
1 回答
3264 浏览

hibernate - 如何使用 iBATIS 实现审计拦截器?

我想记录数据库中的所有更改以进行审计,使用名为 AuditEvent 的表存储修改后的行 ID(主键)、表名、列名、先前值、新值、更改日期(时间戳)、操作类型(插入/更新/删除)和进行更改的用户的名称。

我正在使用 SQL Server 2005,但我不想使用触发器,因为由于我使用连接池,因此很难找到当前用户。

基于 Interceptor 的 Hibernate 解决方案非常简单。使用 iBATIS / iBATOR 时如何做类似的事情?

0 投票
2 回答
860 浏览

sql - 审核是否执行了存储过程 - 在事务日志中

我们有带有完整备份和事务日志的 SQL Server 2005 数据库。我们的数据库有问题 - 需要 SQL CSI Forensic 团队提供帮助。

有没有办法查看事务日志并确定是否执行了存储过程?我们知道它发生的时间(如果它发生了),但它是否发生存在争议。

有什么建议么。我知道我们应该一直在记录——我们现在显然正在考虑这个问题。

0 投票
3 回答
2493 浏览

asp.net-mvc - 记录用户登录到 ASP.NET MVC 应用程序

我正在开发一个 ASP.NET MVC 应用程序,我需要记录用户的登录历史。我需要类似于 Stack Overflow 中最后一次看到的东西(我将保留历史记录,我不知道 SO 是否这样做)。我想知道最好的方法是什么?

  • Global.asax:Application_AuthenticateRequest、Application_AuthorizeRequest、Session_Start
  • Site.Master

任何其他,每个人的优点和缺点?

谢谢

0 投票
3 回答
486 浏览

sql-server - 执行 CREATE TABLE 或 ALTER TABLE 操作时,sql server 存储什么样的审计信息?

这个问题的灵感来自于我的一个存储过程,因为它调用了另一个存储过程,该过程将数据插入到一个架构被完全改变的表中。

问题是您在 SQL Server 数据库中有一个表,但您不知道它是如何到达那里的。您没有任何用于自定义审计信息的 DDL 触发器,并且在表 DDL 的源代码控制存储库中没有记录。仅使用 SQL Server,您可以获得有关该表的哪些取证数据。

我自己,以及在类似情况下偶然发现这个问题的人,都不会从有关版本控制和 DDL 触发器的建议中得到帮助。这些都是很好的前进解决方案,如果公司政治允许我们实施这些解决方案,那么这个博客上有很多关于这些主题的信息。我和处于我这种情况的人真正需要的是能够从 SQL Server 收集尽可能多的数据片段,以与我们能想到的任何其他数据相结合。

0 投票
4 回答
5289 浏览

java - 审计大型 java/j2ee Web 应用程序的最佳方法是什么

我必须审核一个已经发展了几年的大型 Web Java/J2ee 应用程序。它是由其他公司编写的,而不是我正在工作的公司。在目前的状态下,它已经变得难以发展和维护,新功能难以添加,并且经常导致有时会出现在生产中的错误。似乎有一些复制/粘贴的代码导致代码重复。当前的应用程序是某种在线购物,到处都有一些类似 cms 的内容。在代码的较新部分中主要是 Struts 和一些 Spring,也许是一些 ejbs 投入了很好的衡量。有一些可用的单元测试,但不是很多。这些是我被告知的事情,我还没有看到实际的代码。

我的公司将提议重写此应用程序的部分内容,以降低复杂性、提高质量和模块化,并使其能够添加更简单的新功能而不会出现回归。在做出任何承诺之前,他们希望对现有代码的质量有所了解,并评估其中有多少可以重用,以便对必须要做的事情有更多的猜测——完整重写或部分重写。

问题是我必须在很短的时间内(几天)内完成这项工作,所以我正在努力制定一个在这么短的时间内可以完成的计划。我在想的是:

  • 查看“基本”内容 - 异常处理、日志记录
  • 查看分层级别(视图、控制器、dao 层)
  • 测量单元测试的实际覆盖率
  • 也许在项目上运行一些 Checkstyle、Findbugs 和 PMD
  • ...

所以实际的问题是我应该考虑/检查/测量/等哪些其他事情?

我不确定我能从中得到什么样的数字,如果它真的意味着什么,我觉得管理层的要求是一种错误的方法,所以第二个问题是:有没有人有更好的主意?

我将不胜感激任何想法,建议,对此发表评论。

编辑:我将添加两个死码检测器:UCDDCD

0 投票
4 回答
1707 浏览

.net - 审计日志方法的提示

我目前正在开发一个 ASP.NET 人力资源系统。我正在使用基于 MVP 模式的带有 Web 客户端软件工厂的分层架构。ORM 是 NHibernate。我需要实现一个审计日志模块。我读过很多关于不同方法的文章。他们中的大多数都描述了如何跟踪日期、时间戳和进行更改的人的身份,但没有人能告诉我那个:如何跟踪我的域层中任何属性的更改?我不需要任何回滚功能,我只需要记录:更改对象的谁、何时和什么属性,该属性的旧值和新值。

我无法决定将这些更改的处理程序放在哪里。Fowler 在属性的 setter 方法中指出了一个 Audit Log,但我仍然想保持我的域类简单 POCO。也许还有其他方法?

0 投票
5 回答
28538 浏览

database - 关于捕获审计跟踪的数据库设计的想法

如何维护数据库中的数据日志?

我必须维护对每一行所做的每一次更改的日志。这意味着我不能允许DELETEUPDATE被执行。

我怎样才能保留这样的日志?

0 投票
3 回答
4864 浏览

php - 我将如何使用审计跟踪来显示曾经编辑过的字段?

对于我正在处理的一个项目,我被要求创建对记录所做的所有更改的审计跟踪。这是我第一次不得不创建审计跟踪,所以我一直在做很多关于这个主题的研究。

该应用程序将使用 PHP/MSSQL 开发,并且将是低流量的。

根据我的阅读,我几乎决定创建一个审计表并使用触发器来记录表中的更改。

在应用中显示的两个要求如下:

  1. 能够查看对字段所做的所有更改的日志(我几乎知道如何执行此操作)

  2. 在查看应用程序中的记录时,能够看到记录中已更改的任何字段旁边的指示符(可能还有其他信息,如上次更改的日期)。

项目 #2 是目前让我感到悲伤的项目。如果不对每个字段进行单独的查询(或需要很长时间才能执行的非常长的嵌套查询),是否有人对最佳方式提出建议?(我曾考虑为表中的每个字段添加一个额外的“ModifiedFlag”字段,如果该字段曾经被编辑过,它将充当布尔指示符,但这似乎是很多开销。