【问题标题】:How can I override quarkus.security.users.embedded.users on docker run command line?如何在 docker run 命令行上覆盖 quarkus.security.users.embedded.users?
【发布时间】:2020-06-25 22:37:37
【问题描述】:

我有一个基于 quarkus 的 web 应用程序,它使用 基本身份验证嵌入式领域配置。 webapp 在 docker 容器中运行。身份验证属性在 application.properties 中指定,如下所示:

quarkus.http.auth.basic=true

quarkus.security.users.embedded.enabled=true
quarkus.security.users.embedded.plain-text=true
quarkus.security.users.embedded.users.test=mypass
quarkus.security.users.embedded.roles.test=admin

我想覆盖 quarkus.security.users.embedded.users.test 以在 docker 运行时指定密码。

我试图通过在 docker 运行时使用环境变量覆盖 quarkus 属性来做到这一点。

docker run -p 9999:9999 -e QUARKUS_SECURITY_USERS_EMBEDDED_USERS_TEST=newpasswd mywebapp 

这不起作用。当我使用 http://locahost:9999 访问 mywebapp 时,我必须使用 test/mypass 登录。我希望使用 test/newpasswd 登录。

非常感谢任何帮助。

【问题讨论】:

    标签: quarkus


    【解决方案1】:

    我建议你 report an issue 解决这个问题。虽然 Quarkus 将无法从环境变量中“枚举”任何新用户(无法推断出正确的属性名称),但我认为仍然可以覆盖已在 application.properties 中指定的用户的密码像您尝试做的那样使用环境变量。

    【讨论】:

    • 谢谢@knutwannheden。我同意您的观点,无法识别新用户,但我希望能够覆盖 application.properties 中的属性。正如你所建议的,我创建了一个错误报告:github.com/quarkusio/quarkus/issues/10359
    猜你喜欢
    • 2020-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-05
    • 1970-01-01
    • 2021-11-14
    • 1970-01-01
    • 2018-12-18
    相关资源
    最近更新 更多