Spring Boot Micro-service fails Kerberos Authentic

2019-03-03 09:08发布

问题:

We have developed a Spring Boot Application to query data from Hbase on HDP 2.5.
The application works fine when we run it on our local windows machines as it is able to find the jaas.conf & krb5.conf file which have been kept under resources folder of the application and we have provided them as system properties in our code as e.g.
System.setProperties("javax.security.auth.useSubjectCredsOnly","false"); System.setProperty("java.security.krb5.conf","D:\\host\\workspace\\projectname\\src\\main\\resources\\krb5.conf");

However when we deploy in PCF it is unable to read those file which are set as system properties.

Question
What is the way to set environment variables in PCF ?
How do we place files in PCF so that they are available to the classpath of an application ?

回答1:

You can specify an environment variable in your deployment manifest file. Here are the details.

This is assuming your jar file was packaged with krb5.conf file.

The other option is to use Config Server. Here is an introduction on Spring Cloud Config