2015-09-05 57 views
0

我有一個已經完成的J2EE(JSF,CDI,JPA)的應用程序,使用Apache四郎完美,它工作得很好,我很享受四郎註釋(hasRole,調用hasPermission等)。現在阿帕奇四郎(授權)+的SiteMinder(認證)

,這個項目必須能夠還與SiteMinder的認證,並在這裏我的問題是:

  • 我怎樣才能建立一個境界處理SiteMinder身份驗證不失四郎授權(似乎SiteMinder的會給我的用戶名和角色名在HTTP頭)
  • 如果我創建一個自定義的境界,做到了「doGetAuthenticationInfo」,並在會話日誌的用戶,將與SiteMinder的會話發生什麼呢?
  • 如果我設置了「subject.getSession()。setTimeout(1000);」在Shiro中,SiteMinder會話會發生什麼情況,並且已經定義了超時?

我的目的是向用戶SiteMinder進行身份驗證(並控制我的會話)並讓Shiro僅用於授權。 Shiro不能侵入SiteMinder Session。

回答

0

我怎樣才能建立一個境界處理SiteMinder身份驗證不失四郎授權(似乎SiteMinder的會給我在HTTP頭中的用戶名和角色名)

在這種情況下,你需要有2領域一個處理身份驗證,另一個處理授權看一看this one對於如何

如果我創建一個自定義的境界,做到了「doGetAuthenticationInfo」,並在會話日誌的用戶,將與SiteMinder的發生什麼會議?

您的自定義真正負責的是客戶端的SiteMinder所以doGetAuthenticationInfo將返回無論你從後面的SiteMinder我不熟悉的SiteMinder,但你可能要檢查CAS realm作爲一個例子

如果我設置「subject.getSession()。setTimeout(1000);」在Shiro中,SiteMinder會話會發生什麼情況,並且已經定義了超時?

我認爲這是一個混亂這裏當您使用SSO解決方案的會議由SSO服務器管理,而不是客戶端