审计

一旦启用 Spring Security,Spring Boot Actuator 就会提供一个灵活的审计框架,能够发布事件(默认包括“authentication success”、“failure”和“access denied”异常)。 该特性对于报表统计以及基于认证失败实现锁定策略非常有用。

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

自定义审计

如需自定义发布的安全事件,可以自行实现 AbstractAuthenticationAuditListenerAbstractAuthorizationAuditListener

你也可以将审计服务用于自定义业务事件。 具体做法是,将 AuditEventRepository bean 注入到你的组件中直接使用,或通过 Spring ApplicationEventPublisher(实现 ApplicationEventPublisherAware)发布 AuditApplicationEvent