Chrome 内の Kerberos に問題があります。Kerberos は、リクエスト (HTTP POST) がリプレイ攻撃であると考えているようです。ソースコードを詳しく調べています。そして、Kerberos のリプレイ キャッシュが要求のタイム スタンプの記録を保持していることがわかりました。また、このリプレイ キャッシュは常に、リクエスト オーセンティケーターが既にリプレイ キャッシュにあると見なすため、リプレイ攻撃と見なされます。
ここに私のエラーメッセージがあります:
KrbException: Request is a replay (34)
at sun.security.krb5.KrbApReq.authenticate(KrbApReq.java:300)
at sun.security.krb5.KrbApReq.<init>(KrbApReq.java:134)
at sun.security.jgss.krb5.InitSecContextToken.<init>(InitSecContextToken.java:79)
at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:724)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267)
at sun.security.jgss.spnego.SpNegoContext.GSS_acceptSecContext(SpNegoContext.java:874)
at sun.security.jgss.spnego.SpNegoContext.acceptSecContext(SpNegoContext.java:541)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:323)
at sun.security.jgss.GSSContextImpl.acceptSecContext(GSSContextImpl.java:267)
at net.sourceforge.spnego.SpnegoAuthenticator.doSpnegoAuth(SpnegoAuthenticator.java:444)
at net.sourceforge.spnego.SpnegoAuthenticator.authenticate(SpnegoAuthenticator.java:283)
at net.sourceforge.spnego.SpnegoHttpFilter.doFilter(SpnegoHttpFilter.java:229)
このエラーは Chrome でのみ発生します (IE では発生しません)。GWT 2.3 と Tomcat 6 を使用しています。
誰でもこの問題を解決できますか?