有沒有更好的方法檢查javax.naming.AuthenticationException
(或彈簧)的主要失敗原因? LDAP Wiki (Binding Errors)中定義了不同的錯誤。是否有一個更好的方法來分析錯誤代碼的AuthenticationException?
AuthenticationException沒有提供足夠的API來輕鬆確定錯誤代碼。唯一的內容是異常消息。
[LDAP: error code 49 - 80090308:
LdapErr: DSID-0C090334,
comment: AcceptSecurityContext error, data 773, vece]
的identifing塊是 「數據773」 - 靜置錯誤ERROR_PASSWORD_MUST_CHANGE
。但我覺得很奇怪檢查message.contains("data 773")
!有沒有更好的方法來檢查錯誤代碼?
其拋出AuthenticationException
的片段被寫入與org.springframework.security.ldap.DefaultSpringSecurityContextSource
。
InitialLdapContext context = (InitialLdapContext) contextFactory
.getReadWriteContext(principal, password);