2013-01-10 121 views
0

我們應該從哪裏開始使用Java Web應用程序爲單個Windows(Active Directory)域設置單點登錄?WebSphere單點登錄,Windows域

我不是指單點登錄是指用戶明確簽入一個Java網站,然後保持登錄其他Websphere網站。

我們正在尋找能夠有效「檢測」當前在客戶端瀏覽器的PC上登錄的Windows用戶(Windows XP,即將成爲Windows 7)的東西,並將該用戶的登錄名提供給Java WebSphere應用。

軟件是Java/WebSphere,帶有一個Flex前端,如果需要的話,我們可以將它放入JSP中。 (目前它只是一個html頁面,這是可取的,GraniteDS用於遠程處理。)

服務器不是Windows服務器,所以Waffle不是一個選項。目前的研究似乎表明我們需要使用一些名爲SPNEGO的東西,但是我還沒有找到有關Java開發人員在設置它時的角色的信息。

我對服務器端(WebSphere)配置&需求以及Java應用配置&需要的代碼感興趣(這似乎很難通過Google來定位)。

回答

1

Java應用程序開發人員只需將Web應用程序配置爲依賴來自容器(Websphere Application Server)的身份驗證。

其餘的都取決於容器的配置,以提供正確的憑證等。WAS管理員會爲SPNEGO/Kerboros做這樣的事情:http://www.redbooks.ibm.com/abstracts/sg247771.html。此外,瀏覽器配置需要將由Websphere託管的站點添加到Intranet區域內允許的域和安全機制。

http://www.iis.net/learn/extensions/url-rewrite-module/reverse-proxy-with-url-rewrite-v2-and-application-request-routing中,更好的'hack'可能(未測試)將Websphere放在IIS後面。

在所有情況下,您仍然需要弄清楚如何使Flex獲得瀏覽器執行Windows NTLM認證,或者自行完成Windows NTLM認證。祝你好運。

+0

我們將看看這些鏈接,看看它是如何發展的。我們正在尋找的一個方面是如何「配置Web應用程序依賴來自容器的身份驗證」,不確定這是規範的一部分,應用程序服務器特定的還是什麼。 – Mifune

+0

好。讓我們更新它的進展情況。關於你的問題,它是servlet規範的一部分,應用程序的web.xml定義了認證的角色和類型。容器在實現上有所不同,但最終他們的工作是向Web應用程序提供用戶(委託人)和角色。所有Web應用程序所要做的就是從請求中查詢用戶及其角色。即如果不存在,則不認證。欲瞭解更多信息,請參閱此鏈接:http://www.informit.com/articles/article.aspx?p=24253 –