我目前正在開發一個在JBoss AS 7上運行的項目,該項目需要各種來源的身份驗證。我試圖理解提供認證的各種組件。瞭解Java應用服務器中的身份驗證
我有一些假設/猜測如何這一切都適合在一起,但我需要確保我的理解是正確的。所以下面是我所瞭解的JBoss AS7的認證過程。
你有一個安全域,定義用戶如何進行身份驗證。這個領域然後暴露給您的應用程序,以確保其中的一部分或全部。在AS7中,在<子系統中配置xmlns =「urn:jboss:domain:security:1.0」>元素。
該領域可以配置爲使用登錄模塊(如數據庫,LDAP,本地文件或其他)對各種來源的用戶進行身份驗證。可以定義多個登錄模塊,並且可以指定登錄模塊的某些組合必須「成功」才能進行身份驗證。
實際的用戶名和密碼通過在web.xml文件(對於servlet)中定義的機制傳遞,在<登錄配置>元素中定義。
假設上述處理是正確的(並且可能沒有):
- 是否像JAAS的規範下這整個認證過程掉落,或是JAAS的只是一個小的或可選部分這個程序?
- 所有類型的<認證方法>的(即BASIC,DIGEST和FORM)可以與各種登錄模塊一起工作嗎? This page似乎不建議,但我還沒有看到任何明確的文檔匹配<登錄模塊>選項<登錄配置>選項。
- 從登錄-config來登錄模塊的用戶名和密碼的流動似乎直線前進足夠的,但像OpenID的OAuth的或在有中間步驟(如重定向到外部登錄頁)系統會發生什麼?
- 像Seam 3 Security,Apache Shiro和Spring Security這樣的項目如何適合這張照片?
要跟蹤Yves的回答,您可以在這裏找到更多關於Apache Shiro的信息:http://shiro.apache.org如果遇到任何問題,請隨時發佈到列表。 – Chunsaker 2012-05-10 00:45:32