Class LoginService

java.lang.Object
io.leandev.appfuse.security.auth.LoginService

public class LoginService extends Object

登入引擎 capability(ADR-023)

login/refresh/logout 三操作的 orchestration。對帳號的全部需求以 AuthPrincipal 契約 + AuthPrincipalLookup SPI 表達,不假設任何帳號結構;wire 面(HTTP mapping、DTO 形狀、例外 → RFC 7807 映射、使用者資訊查詢)歸消費端的 HTTP 殼。

預期的 credential rejection 以保留實際原因的 AuthenticationException 家族表達;HTTP 揭露程度由消費端最後的 response policy 決定,基礎設施例外不得偽裝成 Session 失效。租戶 claim 經 TenantAwareUserDetails 探詢——principal 未實作即無租戶 claim。

組合:jar 不做 autoconfiguration(ADR-014),由消費端的組態(參考實作為 AuthInfrastructureConfig)以 @Bean 建立本類;全部依賴皆可由 Spring 建構子注入解析 (Optional<T> 依賴無 bean 時為 empty)。