Я использую Spring Boot OAuth2 (https://projects.spring.io/spring-security-oauth/docs/oauth2.html),, создаю свой собственный сервер авторизации.
Я не нашел способа предоставить согласованный журнал доступа для пользователей, которые нажали /oauth/token
, мне нужны как успешные, так и неудачные события. Я много чего перепробовал, но они каким-то образом не удовлетворяют мои потребности.
- Стандартная пружинная защита
AuthenticationSuccessHandler
, AuthenticationFailureHandler
, AuthenticationEventPublisher
, AccessDeniedHandler
или AuthenticationEntryPoint
: Похоже, этого не происходит вообще.
- События приложения
AuthenticationCredentialsNotFoundEvent
: Это происходит, но я не получаю никакой информации о клиенте. Даже имя пользователя / идентификатор клиента.
ServletRequestHandledEvent
: Хорошие вещи, я все получаю, но срабатывает только на успех.
- Spring Boot
AuditApplicationEvent
: происходит только при сбое, а принцип действия пользователя "неизвестен". Даже IP-адрес не доступен.
OAuth2AccessDeniedHandler
: Этого тоже не бывает. Я установил его с AuthorizationServerSecurityConfigurer
, поэтому я не уверен, что с этим происходит.
Так нет ли способа записать, что происходит? Я бы подумал, что в любой инфраструктуре, связанной с безопасностью, есть что-то доступное.