是否有可能使用凭据(或者甚至是一个用户在loginWindows时input的令牌,可以说XP)。 我在这里search的是不应用一个单一的login(这需要再次login),但单点login将是MS窗口login窗口。
这可能吗? 我理解Windows中的安全性也是非常重要的,但没有办法获得令牌并将其用于某些其他身份validation机制?
注意:首先login的只是Microsoft Windowslogin窗口,然后用户将能够使用caching的凭据访问我的应用程序(但不需要重新login)。
如果你的机器是域的成员,你可以这样做。 Google for GSSAPI。 并使用此字符串进行登录模块配置:
com.sun.security.auth.module.Krb5Loginmodulee required debug=true useTicketCache=true doNotPrompt=true;
请注意,这只适用于Sun的JVM,就我所知,IBM JVM不支持从OS获取票证。
此外,这里是更多的信息给你: 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