No momento, estou com um problema com a expiração do ticket do Kerberos em um keytab no WAS 8.5.5.5. O mesmo processo funciona corretamente no Tomcat 8, e acredito que a principal diferença seja as configurações do cliente JDK / JAAS. Estou executando ambas as configurações como baunilha (sem configurações de servidor, exceto os tamanhos de memória / heap).
Aqui está uma amostra do arquivo de log quando executada no Websphere -
2015-12-01 19:49:42,393 WARN [UserGroupInformation] PriviledgedActionException as:principal/fqdn@place (auth:KERBEROS) cause:javax.security.sasl.SaslException: Failure to initialize security context [Caused by org.ietf.jgss.GSSException, major code: 8, minor code: 0
major string: Credential expired
minor string: Kerberos credential has expired]
Existe alguma configuração JAAS customizada que eu uso no próprio WAS sem ter que escrever código para contornar o comportamento do IBM JDK de forma diferente? Eu vejo uma tentativa de novo login, mas não parece lidar com a expiração (como acontece no Oracle JDK).
2015-12-01 20:06:30,718 INFO [UserGroupInformation] Initiating logout for principal/fqdn@place
2015-12-01 20:06:30,718 DEBUG [UserGroupInformation] hadoop logout
2015-12-01 20:06:30,718 INFO [UserGroupInformation] Initiating re-login for artimapp/qa01-ost-tesla-h-ds02.td.local
2015-12-01 20:06:30,731 DEBUG [UserGroupInformation] hadoop login
2015-12-01 20:06:30,731 DEBUG [UserGroupInformation] hadoop login commit
2015-12-01 20:06:30,731 DEBUG [UserGroupInformation] using existing subject:[principal/fqdn@place, principal/fqdn@place]
Qualquer ajuda sobre isso seria muito apreciada.
Eu encontrei este link - link .
Também encontrei um ticket semelhante no Spring Security, no qual o Cliente Kerberos personalizado foi escrito para a IBM para espelhar o SunJaasKerberosTicketValidator - link .
Minha preferência é evitar que o Hadoop JIRA seja aguardado para ser resolvido e ter que escrever clientes customizados apenas para que o Websphere funcione corretamente.