2014-03-04 33 views
0

我有一個389目錄服務器羣集作爲ldap。我想用phpldapadmin作爲前端。phpldapadmin&389目錄服務器:密碼字段不可見

所有似乎都不錯,但是當我用非管理員用戶登錄時,即使用戶是使用phpldapadmin創建的,我也無法看到自己的密碼字段。登錄工作,但我可以更改密碼值。

相同的phpldapadmin配置可以正常工作openldap

任何想法?

感謝

回答

0

這可能是由默認ACI實施的安全功能。默認情況下,除管理用戶外,沒有人可以讀取用戶對象的userPassword屬性。原因很簡單:雖然使用MD5或SSHA之類的密碼來散列密碼有助於保護它免受攻擊,但這種方法對於攻擊並不完全無懈可擊。如果有人得到你的散列碼,他們可以使用rainbow tablespassword cracking rig來查找/破解散列並獲得純文本密碼。如果你想有一個非管理用戶訪問到所有用戶的密碼,你可以添加以下ACI到合適的對象/容器(可能OU =人):

aci: (targetattr = "userPassword") (version 3.0;acl "Password Reading";allow 
    (read)(userdn = "ldap:///uid=SomeUser,ou=People,dc=example,dc=com");) 

我也建議你使用389通過phpldapadmin管理控制檯,因爲它爲389特有的功能提供了更豐富的接口。