LDAP驗證失敗並發生逾時錯誤 | AEM Oak
本文提供相關步驟,說明如何疑難排解及解決LDAP使用者無法登入的問題,以確保順利的使用者存取及安全性。 若要修正錯誤,請偵錯從AEM到LDAP伺服器的連線。
說明 description
環境
Adobe Experience Manager 6.5
問題/症狀
透過AEM🔗設定LDAP驗證後,無法允許LDAP使用者登入。 將顯示以下紀錄訊息:
Caused by: org.apache.directory.api.ldap.model.exception.LdapException: TimeOut occurred
at org.apache.directory.ldap.client.api.LdapNetworkConnection.writeRequest(LdapNetworkConnection.java:4106)
at org.apache.directory.ldap.client.api.LdapNetworkConnection.bindAsync(LdapNetworkConnection.java:1290)
at org.apache.directory.ldap.client.api.LdapNetworkConnection.bind(LdapNetworkConnection.java:1188)
at org.apache.directory.ldap.client.api.AbstractLdapConnection.bind(AbstractLdapConnection.java:127)
at org.apache.directory.ldap.client.api.AbstractLdapConnection.bind(AbstractLdapConnection.java:112)
at org.apache.directory.ldap.client.api.DefaultLdapConnectionFactory.bindConnection(DefaultLdapConnectionFactory.java:64)
at org.apache.directory.ldap.client.api.DefaultLdapConnectionFactory.newLdapConnection(DefaultLdapConnectionFactory.java:107)
at org.apache.directory.ldap.client.api.ValidatingPoolableLdapConnectionFactory.makeObject(ValidatingPoolableLdapConnectionFactory.java:133)
at org.apache.directory.ldap.client.api.ValidatingPoolableLdapConnectionFactory.makeObject(ValidatingPoolableLdapConnectionFactory.java:59)
at org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:1188)
at org.apache.directory.ldap.client.api.LdapConnectionPool.getConnection(LdapConnectionPool.java:123)
at org.apache.jackrabbit.oak.security.authentication.ldap.impl.LdapIdentityProvider.connect(LdapIdentityProvider.java:771)
... 57 common frames omitted
解決方法 resolution
您需要對從AEM到LDAP伺服器的連線進行偵錯。 以下是一些要檢查的事項:
-
檢查LDAP伺服器是否可使用LDAP瀏覽器(例如JXplorer)從AEM伺服器以外的其他電腦存取。 如果無法存取,則可能是因為網路或防火牆問題。 請連絡您的網路營運團隊和管理您的LDAP伺服器的團隊,以進行調查。
-
如果LDAP伺服器可從其他機器存取,請從AEM伺服器作業系統測試。 在AEM伺服器作業系統上安裝LDAP使用者端,並嘗試從那裡存取LDAP伺服器。 在Linux上,您可以使用ldapsearch命令。 在Windows上,使用JXplorer。
-
如果伺服器可以連線到LDAP伺服器,但AEM LDAP型登入失敗,則我們需要檢查 LDAP識別提供者 設定。 登入 OSGi Web Console (https://aem-host:port/system/console/configMgr)並搜尋 Apache Jackrabbit Oak LDAP Identity Provider。 您可以嘗試一些可能解決此問題的方法:
- 微調使用者*群 DN、*使用者額外篩選器、組基 DN 和 組額外篩選器,使搜尋篩選器僅將相關使用者和組返回到AEM。
- 確保 綁定 DN 和 綁定密碼 正確。
- 取消選取驗證**時管理員池查找和 驗證時使用者池查找。
- 增加 搜尋逾時。
LDAP識別提供者組態的熒幕擷圖:
-
對於大多數企業客戶而言,LDAP通常是負載平衡的。 如果位於LDAP伺服器前的負載平衡器因為某些原因將您的AEM伺服器IP列入黑名單,您也可能會遇到此問題。 如果發生此問題,請洽詢LDAP團隊以解決此問題。 快速測試時,您可能想要直接略過LDAP負載平衡器來點選LDAP伺服器IP,以檢視AEM中的LDAP驗證是否成功。
原因
逾時錯誤通常表示AEM無法連線LDAP伺服器(由於防火牆、網路問題),或是伺服器已關閉或無回應。