是否可以使用凭证(甚至是用户在登录
Windows时输入的令牌,比如XP).我在这里搜索的是不应用单个登录(需要再次登录),但单点登录将是MS Windows登录窗口的登录.
这可能吗?我理解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