gpt4 book ai didi

java - 我可以设置 java.security.auth.login.config 的相对路径吗?

转载 作者:行者123 更新时间:2023-12-04 14:15:37 25 4
gpt4 key购买 nike

在我的 Spring Boot 应用程序中,我需要调用:

System.setProperty("java.security.auth.login.config", authConf);

其中 authConf 似乎被认为是文件的绝对路径。

问题是,我的 Spring Boot 应用程序被打包并作为 jar 执行,我想将文件打包到 jar 中。

this question中提供的答案仅当在服务器中部署 WAR 时才可能工作。当我们使用嵌入式容器运行 JAR 时,它似乎不起作用。

有什么方法可以设置 java.security.auth.login.config 的相对路径来引用我的 jar 中打包的 conf 文件?

最佳答案

我知道答案晚了大约 6 年,但我最近遇到了同样的问题并找到并回答了。也许我的回答至少会帮助下一个面临这个问题的开发者。我能够通过首先创建一个 javax.security.auth.login.Configuration 来解决它类型 JavaLoginConfig然后使用 Configuration.setConfiguration(configuration method)相同的配置类。使用这种方法,我能够捆绑我们的 jaas.conf在 jar 内并使用它的相对路径。
举个具体的例子:

  • 获取要使用的安全配置文件的 URLURL configLocation=YourClass.getClassLoader().getResource("resources/jaas.conf);"
  • 创建 JavaLoginConfig 配置Configuration secConfig=Configuration.getInstance("JavaLoginConf", new URIParameter(configLocation.toURI());
  • 将配置设置为您在第 2 步中创建的配置Configuration.setConfiguration(secConfig);
  • 关于java - 我可以设置 java.security.auth.login.config 的相对路径吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33302528/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com