[英]LDAP/AD authentication random error
我正在通過JAAS將應用程序與AD / LDAP身份驗證集成在一起,盡管此接口在90%的時間內正常工作,但是當用戶嘗試登錄時,有時會遇到技術錯誤。日志中的錯誤如下:
INFO -[LdapLoginModule] user provider: ldaps://<AD server>:636/DC=global,DC=mycompany,DC=com
INFO -[LdapLoginModule] searching for entry belonging to user: <user name>
INFO -[LdapLoginModule] authentication failed
INFO -[LdapLoginModule] aborted authentication
啟用其他日志時,我可以看到以下異常:
javax.security.auth.login.FailedLoginException: Cannot find user's LDAP entry
(這不是憑據問題-正如我所解釋的,它是隨機發生的,如果用戶嘗試使用相同的憑據再次登錄幾次,它將最終成功)
從下面的鏈接檢查LdapLoginModule.java代碼,我試圖按照代碼中的日志輸出來了解確切的位置,但是我無法確切地了解為什么達到/拋出“身份驗證失敗”輸出: LdapLoginModule。爪哇
有人可以幫我了解可能導致此隨機問題的原因,並向我指出正確的方向嗎? 在AD端還是在JAAS config上可能是一個問題?
下面是一些其他信息:
JAAS配置:
LDAP_AD {
com.sun.security.auth.module.LdapLoginModule REQUIRED
userProvider="ldaps://<AD server>:636/DC=global,DC=mycompany,DC=com"
userFilter="(&(sAMAccountName={USERNAME})(objectcategory=user)(memberof=CN=aGroup,OU=Security Groups,OU=Groups,OU=Geneva,OU=Switzerland,OU=EMEA,DC=global,DC=mycompany,DC=com))"
useSSL=true
debug=true;
};
任何對此根本原因的想法將不勝感激。
非常感謝,喬治
正如您注意到的那樣,有一個負載均衡器,您的症狀表明您正在使負載均衡到一個不同步的節點上。 這不太可能,但更可能是AD DC對您的配置不滿意,但其他人都同意。
在新用戶或新更改的用戶上,復制延遲將是現實生活中此問題的常見示例。
對於現有用戶,這似乎不太可能。
它也可能與memberOf屬性有關,后者不是靜態屬性,而是在查詢時進行評估的動態查詢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.