Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法为部署在Pivotal Cloud Foundry中的Spring Boot应用程序获取身份验证的主体名称_Java_Spring_Spring Boot_Cloud Foundry - Fatal编程技术网

Java 无法为部署在Pivotal Cloud Foundry中的Spring Boot应用程序获取身份验证的主体名称

Java 无法为部署在Pivotal Cloud Foundry中的Spring Boot应用程序获取身份验证的主体名称,java,spring,spring-boot,cloud-foundry,Java,Spring,Spring Boot,Cloud Foundry,我不熟悉Spring Boot和CF,但我有一个Spring Boot应用程序正在运行,它需要Kerberos身份验证才能连接到配置单元。我有一个keytab,当我在本地机器上运行它时,我给了它“src/resources…”的路径,它运行没有问题!但是,当我将其迁移到CloudFoundry时,我给了它“/home/vcap/…”的路径,这应该是它获取键表的正确路径。 我也在运行这个: System.setProperty("java.security.krb5.conf"

我不熟悉Spring Boot和CF,但我有一个Spring Boot应用程序正在运行,它需要Kerberos身份验证才能连接到配置单元。我有一个keytab,当我在本地机器上运行它时,我给了它“src/resources…”的路径,它运行没有问题!但是,当我将其迁移到CloudFoundry时,我给了它“/home/vcap/…”的路径,这应该是它获取键表的正确路径。 我也在运行这个:

System.setProperty("java.security.krb5.conf", PropertiesUtils.getProperty("KRB5_ENV"));
System.setProperty("security.auth.login.config", PropertiesUtils.getProperty("JAAS_CONF"));
让我通过keytab进行身份验证。JAAS配置文件具有的位置以及主体。我在CloudFoundry中执行应用程序时遇到此错误

java.sql.SQLException: [Simba][HiveJDBCDriver](500168) Error creating login context using ticket cache: Unable to obtain Principal Name for authentication.

感谢您的帮助!谢谢。

也许可以尝试添加系统属性
sun.security.krb5.debug=true
,这将为您提供更多有关正在发生的事情的详细信息。您可以通过将
-Dsun.security.krb5.debug=true
附加到JAVA_OPTS env变量(使用
cf set env
)并重新启动应用程序来完成此操作。谢谢!我进行了调试,在为系统设置属性时,我实际上缺少了关键字java!