Как передать учетные данные с помощью quarkus в качестве основного приложения без application.properties

#quarkus

#quarkus

Вопрос:

У меня есть приложение quarkus, которое является основным приложением. Вот упрощенный пример:

 @QuarkusMain
public class MyXYZTool { 

    public static void main(String... args) {
        Quarkus.run(MyXYZTool.class, args);
    }

    public static class CacheApp implements QuarkusApplication {
        @Inject
        AgroalDataSource dataSource;

        @Override
        public int run(String... args) throws Exception {
          

            readCommandLineParameter(args);
            //and so on...
          
            return 0;
        }
    }

};
  

У меня также есть application.properties, который содержит учетные данные для доступа к облачному хранилищу больших двоичных объектов Azure.

 Secrets.BlobStorages.xyz.ConnectionString=abcaccesstoken
  

Я запускаю свое приложение из командной строки следующим образом:

 //start from command line
java -jar  ./target/xyz-runner.jar  
  

Мое приложение также работает до сих пор.
Но я хочу передать учетные данные для доступа к облачному хранилищу больших двоичных объектов Azure через командную строку. Это не должно быть жестко запрограммировано в application.properties. Это связано с соображениями безопасности.

Я спрашиваю меня, как я могу передать Secrets.BlobStorages.xyz.ConnectionString через командную строку и активировать это. Кто-нибудь может мне помочь?

Ответ №1:

Я нашел ответ на свой вопрос на этом веб-сайте от Quarkus: https://quarkus.io/guides/config#overriding-properties-at-runtime Я попробовал это, и это работает.