@startuml shiro
subject -> ShiroFilterFactoryBean: login()
ShiroFilterFactoryBean -> BasicHttpAuthenticationFilter : setFilters()
BasicHttpAuthenticationFilter -> SecurityManager: setSecurityManager()
SecurityManager -> Authenticator : authenticate()
Authenticator -> Realm : doGetAuthenticationInfo()
@enduml