CredentialsContainer

CredentialsContainer 介面表示實作的物件包含敏感性資料,Spring Security 內部使用此介面在成功驗證後清除驗證憑證。此介面由大多數 Spring Security 內部網域類別實作,例如 UserUsernamePasswordAuthenticationToken

ProviderManager 管理器會檢查傳回的 Authentication 是否實作此介面。如果是,它會呼叫 eraseCredentials 方法,從物件中移除憑證。

如果您希望自訂的驗證物件在驗證後清除憑證,您應該確保類別實作 CredentialsContainer 介面。

撰寫自己的 AuthenticationProvider 實作的使用者,應該建立並傳回適當的 Authentication 物件(不包含任何敏感性資料),而不是使用此介面。