Problem Description: Pipeline build job in Infoworks fails with the below error in the job log.


io.infoworks.platform.common.exception.IWException: Login failure for user: infoworks@US-EAST4-C.C.PBM-MAC-LP-DEV-DE.INTERNAL  from keytab /home/infoworks/infoworks.keytab javax.security.auth.login.LoginException: Unable to obtain password from user

at io.infoworks.awb.security.AuthenticationUtil.loginWithDefaultKerberosCredentials(AuthenticationUtil.java:160)

at io.infoworks.awb.security.AuthenticationUtil.reloginUserWithDefaultKerberosCredentials(AuthenticationUtil.java:117)

at io.infoworks.awb.security.AuthenticationUtil.reloginUserWithDefaultKerberosCredentials(AuthenticationUtil.java:112)

at io.infoworks.awb.security.AuthenticationUtil.doAs(AuthenticationUtil.java:37)

at io.infoworks.awb.security.AuthenticationUtil.doAs(AuthenticationUtil.java:25)

at io.infoworks.awb.tools.HiveUtils.getConnection(HiveUtils.java:64)

at io.infoworks.awb.tools.HiveUtils.getConnection(HiveUtils.java:22)


Root cause:


This issue could happen if the infoworks user principal provided in the $IW_HOME/conf/conf.properties file is invalid or has any extra white spaces in it.


Solution: 

a) Login to Infoworks Edge/server node as the user who starts infoworks services.

b) vi $IW_HOME/conf/conf.properties file.

c) Get the value for the below configs.

iw_security_kerberos_default_principal

iw_security_kerberos_default_keytab_file

d) source $IW_HOME/bin/env.sh

e) Run the below command to check if the infoworks keytab file and the user principal provided are valid.


for example: kinit -kt <path_to_the_keyatabfile>/infoworks.keytab <infoworks-user>@<infoworks-user-principal>


kinit -kt /home/infoworks/infoworks.keytab infoworks@US-EAST4-C.C.PBM-MAC-LP-DEV-DE.INTERNAL


If the above command runs successfully then check if there is any white space in the value for the config iw_security_kerberos_default_principal or iw_security_kerberos_default_keytab_file in the conf.properties file and remove if any.


Run the pipeline build job and this should resolve the issue.


Applicable Infoworks Versions:


IWX v2.x, v3.x, v4.x