2014-09-23 86 views
0

我正在使用Liferay 6.2,並且正在嘗試執行LDAP身份驗證。 LDAP服務器由另一個組織提供,並且我無權訪問任何配置,我只擁有系統帳戶的憑據來查找目錄。當我嘗試從LDAP服務器的身份驗證失敗,出現以下錯誤代碼與用戶憑據登錄的Liferay:Liferay LDAP身份驗證無法正常工作

13:54:05,738 ERROR [http-bio-8080-exec-3][LDAPAuth:341] Problem accessing LDAP server 
javax.naming.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: 
DSID-0315270B, problem 2001 (NO_OBJECT), data 0, best match of: 
'O=uni,C=de' remaining name 'ou=people,o=uni,c=de' 

同樣的錯誤,試圖與不在LDAP存在的用戶登錄時,會發生目錄。儘管如此,繪圖仍然有效。嘗試使用有效的用戶憑證登錄後,liferay數據庫中會有相應的用戶數據。但是訪問Liferay是不可能的。

這些都是我在portal-ext.properties設置(測試LDAP連接返回成功,連接設置pseudonymised):

ldap.base.provider.url=ldaps://ldap.ldap-server 
ldap.base.dn=ou=people,o=uni,c=de 
ldap.security.principal=uid=prox,ou=prox,o=uni,c=de 
ldap.security.credentials=secret 

#auth.pipeline.enable.liferay.check=false 

ldap.auth.enabled=true 
ldap.auth.required=true 
ldap.auth.method=bind 

ldap.import.enabled=false 
ldap.import.on.startup=false 
ldap.import.interval=10 
ldap.export.enabled=false 
ldap.export.group.enabled=false 

ldap.auth.search.filter=([email protected][email protected]) 
ldap.import.user.search.filter=(objectClass=inetOrgPerson) 

ldap.attrs.transformer.impl=com.liferay.portal.security.ldap.DefaultAttributesTransformer 
ldap.user.mappings=screenName=cn\npassword=userPassword\nfirstName=givenNam\nlastName=sn\njobTitle=title\ngroup=groupMembership 

users.email.address.required=false 
[email protected] 
users.email.address.generator=com.liferay.portal.security.auth.DefaultEmailAddressGenerator 
users.email.address.validator=com.liferay.portal.security.auth.DefaultEmailAddressValidator 

ldap.password.policy.enabled=false 
ldap.import.user.password.enabled=true 
ldap.import.user.password.autogenerated=false 
ldap.import.user.password.default=test 

回答

0

它現在有效。有兩個問題:

  1. 我改變ldap.base.dn = OU =人,O = UNI,C = DE到ldap.base.dn = O = UNI,C = DE和

  2. ldap.import.user.search.filter =(objectClass的=爲inetOrgPerson)到ldap.import.user.search.filter =(objectClass的= *)

0

檢查的LDAP側的FQDN,包括前綴(CN,OU,等等),並確保它與Liferay中的目錄配置相匹配。

您可以嘗試在控制面板上對其進行配置,因爲它可以檢查連接是否已建立,所以對您來說更容易。您可以檢查用戶是否被抓取,甚至不需要重新啓動服務器。

+0

其實我所使用的控制面板,以及。我只是使用屬性文件來共享我的設置。關於LDAP服務器端的認證,它似乎正常工作。負責LDAP服務器的人員檢查了日誌文件。我認爲這可能是映射問題,因爲LDAP服務器不提供郵件和密碼作爲屬性。密碼仍然映射到數據庫,可能來自登錄字段。郵件屬性由users.email.address.required = false取消。登錄不起作用。 – Potte 2014-09-25 09:33:28