审计

一旦启用了 Spring Security,Spring Boot Actuator 就提供了一个灵活的审计框架,用于发布事件(默认情况下包括"认证成功"、"失败"和"访问被拒绝"异常)。 这个功能对于报告和实现基于认证失败的锁定策略非常有用。

你可以通过在应用程序配置中提供一个类型为 AuditEventRepository 的 bean 来启用审计功能。 为了方便起见,Spring Boot 提供了 InMemoryAuditEventRepositoryInMemoryAuditEventRepository 的功能有限,我们建议仅在开发环境中使用它。 对于生产环境,建议创建你自己的 AuditEventRepository 实现。

自定义审计

要自定义发布的安全事件,你可以提供自己的 AbstractAuthenticationAuditListenerAbstractAuthorizationAuditListener 实现。

你也可以将审计服务用于你自己的业务事件。 要做到这一点,你可以将 AuditEventRepository bean 注入到你自己的组件中并直接使用它,或者通过 Spring 的 ApplicationEventPublisher(通过实现 ApplicationEventPublisherAware)发布 AuditApplicationEvent