我们正面临一个有趣的问题。用户使用Kerberos身份验证登录到应用程序。他们几次成功,但突然他们面临用户登录信息的锁定,他们在屏幕上看到下面的错误
Login error: com.ibm.security.krb5.KrbException, status code: 24
message: Pre-authentication information was invalid
Stack Trace :
javax.security.auth.login.FailedLoginException: Login error: com.ibm.security.krb5.KrbException, status code: 24
message: Pre-authentication information was invalid
at com.ibm.security.jgss.i18n.I18NException.throwFailedLoginException(I18NException.java:33)
at com.ibm.security.auth.module.Krb5LoginModule.a(Krb5LoginModule.java:457)
at com.ibm.security.auth.module.Krb5LoginModule.b(Krb5LoginModule.java:377)
at com.ibm.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:200)
at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:56)
at java.lang.reflect.Method.invoke(Method.java:620)
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:781)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:215)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:706)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:704)
at java.security.AccessController.doPrivileged(AccessController.java:452)
当我们重新启动websphere应用程序服务器时,一切都适用于相同的用户,直到他们再次遇到问题。我们已经尝试检查日志并更改密钥表文件,但没有任何效果。有人面对这个问题吗?
答案 0 :(得分:4)
它可能与时间(NTP)问题有关。
据我所知,Kerberos preauthentification使用时间戳(生成一次性密码),所以我敢打赌NTP问题可能会导致这类问题。
此外,未被销毁的凭据可能会导致我认为存在此类问题(例如,用户未正确注销)
检查所有服务器(应用程序运行的应用程序以及Kerberos KDC)是否与NTP服务器同步并具有完全相同的时间。