审计

一旦 Spring Security 开始运行,Spring Boot Actuator 就拥有一个灵活的审计框架,该框架发布事件(默认情况下,包括“身份验证成功”、“失败”和“访问拒绝”异常)。此功能对于报告和根据身份验证失败实施锁定策略非常有用。

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

自定义审计

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

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