问题标签 [audit-tables]

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 投票
2 回答
586 浏览

java - 有没有办法引用规格(春季)的审计表?

我一直在寻找与此类似的问题,但没有成功。

我的目标:我需要获取创建某个实体的用户名,该用户名存储在通过 Spring 的 @AuditTable 引用的所述实体的审计表中。

有点(希望)解释:在这种特殊情况下,我将添加到使用 org.springframework.data.jpa.repository.JpaSpecificationExecutor 类以及 Predicate 类(javax.persistence.criteria.Predicate)构建的先前存在的查询中. 连接往往使用类的名称(例如 Join),然后 Spring 从中获取表名。我的问题是,有没有办法让 Spring 查看审计表名,而不是实体的表名?

一个例子是:

一个可能的解决方案:我正在考虑添加一个引用被审计实体的新实体,如下所示:

然后我的方法是

我会努力完成这项工作。有没有办法做到这一点?我应该只添加一个执行此操作的本机查询吗?谢谢!

0 投票
0 回答
63 浏览

mysql - MySQL trigger after update to insert in audit table

I have a table called tags and tags_audit.

I have created a trigger such that if there is an update on one of the fields, I would insert rows equal to the number of fields updated in the row of tags table, into the tags_audit table.

Table: tags Structure:

Table: tags_audit Structure:

Trigger

I feel that the above above trigger that I have written is clumsy and there should be a better way to do this.

Eg.

if there are 4 fields updated in a row of tags table, then I'm doing 4 inserts into the tags_audit table. Is there a better approach/way to do this?

0 投票
1 回答
1506 浏览

sql - 如何在 SQL Server 的触发器中获取多个字段的旧值和新值?

我有一张桌子Person

每当我插入或更新上表中的多个字段时,我都想要所有更新字段的先前值和当前值,并使用触发器将其存储在另一个表中。我们如何获取所有更新字段的值。

例如

当我在这两种情况下都使用上述命令时,我想要旧值和当前值并将其存储在另一个表中。我们如何使用触发器来实现这一点?

0 投票
1 回答
219 浏览

spring-boot - envers 中 _aud 表中的旧值

我在spring boot中集成了hibernate envers。现在我的要求是当 *_AUD 表中的值更改时,特定列也具有旧值。但是我在 Hibernate Envers 插件中看不到任何可用的功能。请建议。

谢谢

0 投票
1 回答
89 浏览

sqlalchemy - 在审计表中添加 JSON 数据

我正在为我的数据库创建审计表,sqlalchemy-postgresql-audit但问题是它audit_table为每个表创建了一个单独的表,我不想audit_table为所有包含

我已经编辑了源代码,为所有人创建了一个公用表,extend_existing=True并且我不想添加行的数据,transactedJSON. data我怎样才能做到这一点?

0 投票
0 回答
52 浏览

hibernate - Hibernate Envers:从实体中删除的列是否也应该删除到审计/历史表中?

如果实体有一个列将在下一个版本中删除(或通常重命名或更改),那么将该列保留在审计表中是一种好习惯吗?

  • 如果是这样,随着时间的推移,这最终会随着您的实体模型的变化而增长和增长。是否有关于何时清理的指南?
  • 如果不是这样,并且该列被删除,那么您正在操纵历史记录并且正在丢失数据。

当列从数据类型(例如从 VARCHAR 到 NUMBER)更改时该怎么办?

旁注:我不让 Hibernate Envers 创建列,而是使用 liquibase-scripts 自己管理它们。我确实想知道如果设置了自动 ddl 选项,Hibernate Envers 会做什么。

0 投票
1 回答
911 浏览

java - 如何使用 @ManyToMany 审核 @JoinTable

我正在开发一个带有 H2 数据库的 Spring-Boot 项目。我有两个实体PortfolioReport,两者之间存在多对多关联。我希望对这些实体进行审核,因此我按照本教程通过AuditorAware带有自定义字段的界面进行审核。

这两个实体都经过了很好的审计,列是在数据库中创建的。但是,连接表portfolio_reports不会被审计。我怎样才能审计连接表呢?

投资组合.java

报告.java

可审计的.java

AuditorAwareImpl.java

持久性配置.java

0 投票
1 回答
214 浏览

hibernate-envers - 使用 Debezium 审计数据更改

我有一个用例,我想将数据库表数据更改审核到另一个表中以达到合规性目的。首先,应审核对插入/更新/删除等数据的任何更改。我发现了不同的选项,例如JaVersHibernate EnversDatabase triggersDebezium

我避免使用 JaVers 和 Hibernate Envers,因为这不会捕获通过直接 SQL 查询发生的任何数据更改以及通过其他应用程序发生的任何数据更改。我看到的另一个问题是我们需要将与审计相关的代码添加到同一事务边界中的主应用程序代码中。

我也避免使用数据库触发器,因为我们根本没有在任何部署中使用触发器。

然后我带着很有希望的 Debezium 离开了。但是,我唯一担心的是我们需要使用 Kafka 来利用 Debezium。如果主表和审计表都位于同一个数据库实例中,是否需要使用 Kafka 才能使用 Debezium?

0 投票
1 回答
32 浏览

oracle - 审计表 DEPT 触发器

当这个数据库触发器被触发时会发生什么?

命令(作为用户 SYS):

这如何影响正常的数据库操作?

0 投票
2 回答
500 浏览

dynamics-crm - 如何在 Dynamics 365 Customer Engagement 中使用 FetchXML 将审核表连接到实体表

我想在此查询中添加指向实体表的链接:

我尝试使用 ObjectTypeCode 属性但链接到 Product 表,但似乎没有相应的值(Product 的 ObjectTypeCode 为 1024)。

谢谢您的帮助。