2011-06-12 53 views
1

在我們的組織中,我們正在開發基於ldap的身份驗證和授權 以及單點登錄功能。在開發這個通用模塊時,會有數十個依賴它的模塊。該工具集 -適用於基於spring的java應用程序的身份驗證和授權的最佳實踐

  • 休眠
  • 的Tomcat 7
  • openAm/OpenSSO的
  • OpenLDAP的
  • PostgreSQL的

我們將簡單的認證機制,但很複雜授權計劃。我們不確定什麼是授權的正確方法。我們是否應該將認證和授權邏輯放在LDAP中,還是隻應用於認證?在這種情況下,我們將不得不攪亂OpenAM/OpenSSO。還有其他方法嗎?像春季安全,CAS,JOSSO,..?無論採用哪種方法,它都必須具有可擴展性和可維護性。任何建議或幫助將不勝感激。

感謝, Nazrul

+4

1年+ 0接受的答案=沒有幫助。 – hvgotcodes 2011-06-12 14:30:19

回答

3

你可以看看阿帕奇四郎:http://shiro.apache.org/。它是一個易於使用的安全框架,支持大多數現有的安全技術,包括LDAP和Single Sign On。此外,通過對AuthenticatingRealm和AuthorizingRealm(來自Shiro API)進行子類型化,無論它們有多複雜,都可以實施身份驗證和授權策略。

最常見的,你會實現你自己:

  • AuthenticatingRealm
  • AuthorizingRealm
  • AuthenticationToken
  • AuthrozationToken
  • PremissionResolver

    等等...

1

對於授權,您可以查看基於XACML的外部授權框架,eXtensible Access Control Markup Language

這是一個OASIS標準,它實現了基於屬性的訪問控制,爲您設計授權提供了很大的靈活性。

相關問題