2009-10-17 109 views
2

用戶正在使用JAAS訪問受限Web應用程序(在Glassfish 2.1上)。使用LDAPRealm,並從LDAP成功執行認證。應爲用戶安裝密碼策略,以便他們被迫更改密碼,具有一定複雜性/長度的密碼,密碼失敗和最後N個密碼應該被檢查。所使用的LDAP服務器的密碼策略(OpenDS)支持所有這些,但在我們使用的JAAS FORM登錄中如何接收這類信息並不明顯,因此信息(即「請更改密碼」)可以顯示給用戶。帶有LDAP密碼策略的JAAS

你有什麼想法如何去實現呢?僅使用數據庫不是一個選項,用戶需要在LDAP中。什麼是不明顯的是完全使用LDAP密碼策略,還是全部使用我們的Web應用程序進行編程。我想避免這種情況,並使用LDAP的本地密碼策略。

感謝您的回答和問候, 博佐

回答

1

不幸的是,你可以使用JAAS是種限制爲一小部分業務,任何登錄系統可以支持做什麼。雖然LDAP支持密碼策略,但其他登錄系統(例如密鑰庫)可能不支持,所以JAAS不能擁有需要此密碼的代碼。

因此,您必須直接使用JNDI或可能this library from Novell與LDAP服務器通信。

+0

你好Zarkonnen - 我應該能夠寫一個自定義的JAAS登錄模塊,一個能夠捕獲從LDAP發送的異常並對用戶執行正確的邏輯嗎? – bozo 2009-10-17 10:53:04

+0

即,使用這樣的東西:http://stuffthathappens.com/blog/2008/05/16/writing-a-custom-jaas-loginmodule/。 – bozo 2009-10-17 11:01:01

+0

這個答案簡直是不真實的。您可以編寫自己的JAAS登錄模塊來執行您喜歡的任何LDAP操作,包括擴展的密碼策略操作。我完成了這個。 @bozo – EJP 2016-09-21 16:54:47