2012-12-10 26 views
0

我正在開發需要代表用戶生成Kerberos票證的Java EE服務器應用程序。生成沒有用戶密碼的AD Kerberos票據

我正在開發的應用程序將使用備用憑據(非Active Directory,如生物識別)對用戶進行身份驗證,然後需要以某種方式生成顯示用戶已通過身份驗證的Kerberos票證。然後,我將使用Kerberos票證來生成一個SPNEGO令牌,並將該令牌插入到HTTP頭中,這樣用戶就不必在來自瀏覽器的後續請求中重新進行身份驗證。

是否有可能代表沒有用戶的原始AD密碼的用戶生成該Kerberos票證? (假設我有權訪問AD服務帳戶登錄密碼&)。如果可能的話,我會怎麼做呢?什麼樣的配置,權限是必要的?

回答

2

是的,這是可能的。微軟已經爲此擴展了Kerberos。這稱爲用戶服務(S4U)。你的情況被稱爲S4U2Self(協議轉換)。這將在Java 8中可用。您可以檢查ticket並將該代碼添加到Java認可的類路徑中。您可以在MIT Kerberos wiki中閱讀更多內容。

+0

非常感謝。正是我在找什麼! –

+0

很高興我能夠幫助你。如果你得到這個工作,請分享你的經驗。你也許會喋喋不休地答覆我的答案。 –

+0

請注意,您需要以某種方式從客戶端獲得UPN。 –