Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Enabling Kerberos: javax.security.auth.login.LoginException: Unable to obtain password from user

Hello,

I'm trying to enable Kerberos for my rpm-installation. I followed the instructions in the [documentation] but without success. What I did so far:

  • Created sdc user
  • Created principal (sdc@MYCOMPANY.REALM) and headless keytab for StreamSets
  • Changed permission to sdc for the generated keytab file
  • Stopped sdc with systemctl and configured the Kerberos properties under $SDC_CONF/sdc.properties
  • My Kerberos properties under $SDC_CONF/sdc.properties are: .)kerberos.client.enabled=true .)kerberos.client.principal=sdc@MYCOMPANY.REALM .)kerberos.client.keytab=/etc/security/keytabs/sdc.keytab

With the created sdc user I'm able to get a valid ticket from Kerberos but when I want to start sdc I get following exception: (part of the log from journalctl)

java.lang.RuntimeException: Could not get Kerberos credentials: javax.security.auth.login.LoginEx Caused by: javax.security.auth.login.LoginException: Unable to obtain password from user at com.sun.security.auth.module.Krb5LoginModule.promptForPass(Krb5LoginModule.java:897) at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:760) at com.sun.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:617) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498)

I don't understand the issue beacuse I'm able to retrieve a valid ticket from my host and with the sdc user kinit

I'm also pretty sure that I'm using the correct principal image description Any ideas? (https://streamsets.com/documentation/datacollector/3.5.0/help/datacollector/UserGuide/Configuration/DCConfig.html)

Enabling Kerberos: javax.security.auth.login.LoginException: Unable to obtain password from user

Hello,

I'm trying to enable Kerberos for my rpm-installation. I followed the instructions in the [documentation] but without success. What I did so far:

  • Created sdc user
  • Created principal (sdc@MYCOMPANY.REALM) and headless keytab for StreamSets
  • Changed permission to sdc for the generated keytab file
  • Stopped sdc with systemctl and configured the Kerberos properties under $SDC_CONF/sdc.properties
  • My Kerberos properties under $SDC_CONF/sdc.properties are: .)kerberos.client.enabled=true .)kerberos.client.principal=sdc@MYCOMPANY.REALM .)kerberos.client.keytab=/etc/security/keytabs/sdc.keytab

With the created sdc user I'm able to get a valid ticket from Kerberos but when I want to start sdc I get following exception: (part of the log from journalctl)

java.lang.RuntimeException: Could not get Kerberos credentials: javax.security.auth.login.LoginEx Caused by: javax.security.auth.login.LoginException: Unable to obtain password from user at com.sun.security.auth.module.Krb5LoginModule.promptForPass(Krb5LoginModule.java:897) at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:760) at com.sun.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:617) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498)

I don't understand the issue beacuse I'm able to retrieve a valid ticket from my host and with the sdc user kinitklist

I'm also pretty sure that I'm using the correct principal image description Any ideas? (https://streamsets.com/documentation/datacollector/3.5.0/help/datacollector/UserGuide/Configuration/DCConfig.html)