有沒有什麼方法可以定義您自己的加密/解密,而不是使用純文本密碼存儲?你可以有自己的算法,並作爲過程的一部分單獨運行嗎?雖然詳細並沒有具體說明這樣做的具體方法,但我是新的和在線文檔。這是特定於OpenLDAP和用於身份驗證的當前方法。OpenLDAP身份驗證
回答
Apache目錄工作室可以做到這一點爲你
此LDAP瀏覽器檢測到的userPassword OID並提供散列密碼的界面。
suchas: 的userPassword :: e01ENX1Lc25MZmNBclBBQ0Q2M0NKamxTYll3PT0 =
(它只是工作,因爲它內置) 閱讀OpenLDAP的自述文件以獲得更多信息: 這個目錄包含密碼機制的本機slapd的插件, 不積極由項目支持。目前這包括 Kerberos,Netscape MTA-MD5和RADIUS密碼機制。還包括Apache APR1 MD5和BSD/Paul Henning Kamp MD5機制。
要使用Kerberos插件,添加:
在moduleload pw-kerberos.so
您slapd配置文件。
亞達內容十分重要
爲了能夠在默認情況下,你必須添加一個密碼政策疊加和指令讓服務器哈希密碼給你。
如果使用聯機cn = config方法,請將overlay子條目添加到olcDatabase對象。
dn: olcOverlay={0}ppolicy,olcDatabase={2}hdb,cn=config
objectClass: olcPPolicyConfig
olcOverlay: {0}ppolicy
olcPPolicyHashCleartext: TRUE
的slapd.conf方法:
database bdb
suffix "dc=example,dc=com"
...
# invokes password policies for this DIT only
overlay ppolicy
ppolicy_hash_cleartext
然後,當你添加一個新用戶以純文本的userPassword屬性它將存儲哈希密碼。我相信默認是一個非常安全的鹽漬sha1。您還應該考慮限制對userpassword屬性的訪問。
olcAccess: to attrs=userPassword by self write by * auth
你應該永遠,永遠密碼儲存在可逆加密,如果你使用他們的認證!
您應該使用單向散列函數存儲密碼:MD5,SHA1,SHA256。如果你並不是絕對需要以某種舊的,特定的格式存儲它,你應該總是將它們加鹽。 Salted SHA1是OpenLDAP良好的默認設置。
問題是,您需要使用LDAP Extended Operation更改密碼,而不是常規ldapmodify更新,以使其正常工作。最好使用ppolicy
來實際執行以這種方式設置密碼。如果你在這裏,你可能想要做密碼質量檢查和老化。
- 1. OpenLDAP CLI身份驗證失敗
- 2. java sasl身份驗證與openldap服務器
- 3. OpenLDAP用戶記錄插入用於身份驗證
- 4. OWIN身份驗證
- 5. Orchard:Facebook身份驗證
- 6. DotVVM身份驗證
- 7. SaaS身份驗證
- 8. WCF身份驗證
- 9. Vagrant身份驗證
- 10. SWFUpload身份驗證
- 11. Webservice身份驗證
- 12. Firebase身份驗證
- 13. Mongo身份驗證
- 14. ExtJS身份驗證
- 15. WCF身份驗證
- 16. SOAP身份驗證
- 17. 身份驗證base64
- 18. Rails身份驗證
- 19. Smtp身份驗證
- 20. SymbolSource身份驗證
- 21. WCF身份驗證
- 22. JSF身份驗證
- 23. Django - 身份驗證
- 24. umbraco身份驗證
- 25. 身份驗證Cookie
- 26. Mongodb身份驗證
- 27. Nagios身份驗證
- 28. 身份驗證Android
- 29. ajax身份驗證
- 30. EWS身份驗證