是否可以使用憑據(或甚至是用戶在登錄Windows時輸入的令牌,可以說XP)。我在這裏搜索的是不應用單個登錄(需要重新登錄),但單點登錄將是MS Windows登錄窗口的登錄。將憑據Windows傳播到Java桌面應用程序
這可能嗎?我理解Windows中的安全性也很重要,但是沒有辦法獲得令牌並將其用於其他身份驗證機制?
注意:首先登錄的只是Microsoft Windows登錄窗口,然後用戶將能夠使用緩存的憑據訪問我的應用程序(但不需要重新登錄)。
是否可以使用憑據(或甚至是用戶在登錄Windows時輸入的令牌,可以說XP)。我在這裏搜索的是不應用單個登錄(需要重新登錄),但單點登錄將是MS Windows登錄窗口的登錄。將憑據Windows傳播到Java桌面應用程序
這可能嗎?我理解Windows中的安全性也很重要,但是沒有辦法獲得令牌並將其用於其他身份驗證機制?
注意:首先登錄的只是Microsoft Windows登錄窗口,然後用戶將能夠使用緩存的憑據訪問我的應用程序(但不需要重新登錄)。
如果您的機器是域的成員,則可以這樣做。 Google for GSSAPI。並使用此字符串爲您登錄模塊配置:
com.sun.security.auth.module.Krb5LoginModule required debug=true useTicketCache=true doNotPrompt=true;
注意,這僅適用於Sun的JVM,因爲據我所知,IBM的JVM不支持獲取從操作系統的票。
而且,這裏是更多的信息,供各位:http://msmvps.com/blogs/sp/archive/2007/06/05/integrating-java-jdbc-and-kerberos.aspx
而且,這對現代版本的Windows的工作,你必須調整你的註冊表設置:
在Windows Server 2003和Windows 2000 SP4的,這裏是必需的註冊表設置:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters
allowtgtsessionkey
REG_DWORD
0x01
這裏是註冊表設置在Windows XP SP2中的位置:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\
allowtgtsessionkey
REG_DWORD
0x01
非常感謝您的FOPR快速的答案。我會在早上嘗試第一件事。 (是的,我的機器是域的成員)。這是什麼一回事? http://java.sun.com/products/jndi/tutorial/ldap/security/gssapi.html 非常感謝! – theo 2010-07-13 20:28:47
有誰知道這是否適用於Windows 7 Professional? – Yaroze 2013-01-17 10:34:27
是的,它大部分時間都在使用。 – Vlad 2013-01-17 21:16:23