Kerberos ist nach dem Upgrade von Java6 auf Java7 defekt

Ich habe eine funktionierende Anwendung mit der Spring-Security-Kerberos-Erweiterung, die auf JBoss ausgeführt wird und Java 6 ausführt.

Ich bin gerade dabei, mein jvm von Java 6 auf Java 7 zu aktualisieren. Wenn ich dabei die gleiche Codebasis und das gleiche Keytab verwende, das auf Java 6 funktioniert hat, wird jetzt eine Fehlermeldung angezeigt, wenn ich Java 7 verwende.

Ich erhalte durchweg: java.security.PrivilegedActionException: GSSException: Fehler auf GSS-API-Ebene nicht angegeben (Mechanismusebene: Ungültiges Argument (400) - Schlüssel des entsprechenden Typs zum Entschlüsseln von AP REP - RC4 mit HMAC nicht gefunden)

Ich habe versucht, das Keytab mit den verschiedenen / crypto-Optionen, die in anderen Foren beschrieben wurden, ohne Erfolg neu zu generieren.

Ich habe den Java 7-Code debuggt und tatsächlich haben sich die Klassen, die sich mit dem Lesen des Keytabs beim Start befassen, von 6 auf 7 geändert. Kann es sein, dass mein Keytab nicht mehr richtig in die App eingelesen wird? Einige der Debugmeldungen, die ich beim Start mit Java6 sehe, werden in 7 nicht mehr angezeigt, aber ich kann nicht sagen, ob dies beabsichtigt ist oder ob dies darauf hinweist, dass etwas anderes im Spiel ist? Hat jemand anderes Probleme beim Upgraden von 6 auf 7 gehabt und hatte die Kerberos-Integration einen Fehler? Irgendein Rat?

Wenn sich Spnego und Kerberos beim Start anmelden, wird in meinem Protokoll Folgendes angezeigt:

2012-12-10 10:29:30,886  Debug is  true storeKey true useTicketCache false useKeyTab true doNotPrompt true ticketCache is null isInitiator false KeyTab is jndi:/localhost/docfinity/WEB-INF/classes/config/common/security/http-docfinity.keytab refreshKrb5Config is false principal is HTTP/[email protected] tryFirstPass is false useFirstPass is false storePass is false clearPass is false
2012-12-10 10:30:26,322  principal is HTTP/[email protected]
2012-12-10 10:30:29,794  Will use keytab
2012-12-10 10:30:29,807  Ordering keys wrt default_tkt_enctypes list
2012-12-10 10:30:29,821  Config name: C:\Windows\krb5.ini
2012-12-10 10:30:29,827  Using builtin default etypes for default_tkt_enctypes
2012-12-10 10:30:29,832  default etypes for default_tkt_enctypes:
2012-12-10 10:30:29,837   17    aes128-cts-hmac-sha1-96
2012-12-10 10:30:29,839   16    des3-cbc-sha1-kd
2012-12-10 10:30:29,842   23    rc4-hmac
2012-12-10 10:30:29,846   1     des-cbc-crc
2012-12-10 10:30:29,849   3     des-cbc-md5
2012-12-10 10:30:29,851  .
2012-12-10 10:30:29,855  Commit Succeeded 

Eine andere Frage - Sie werden sehen, dass versucht wird, C: \ Windows \ krb5.ini zu lesen. Ich habe keine solche Datei auf meinem Server. Brauche ich einen Ich hatte auch keinen mit Java 6 und das hat funktioniert.

Aaron

Antworten auf die Frage(3)

Ihre Antwort auf die Frage