簡體   English   中英

LDAP / AD認證隨機錯誤

[英]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上可能是一個問題?

下面是一些其他信息:

  • 啟用了SSL
  • “ AD服務器”不是域控制器,而是負載均衡的DNS方法
  • 使用匿名綁定(搜索優先)模式

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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM