Symfony,如何在 public 代码库中将来自 in_memory 提供商的凭证设为私有?

Symfony, how can I make the credential from an in_memory provider private in a public code base?

我设置了一个 Symfony 项目以使用来自 in_memory 提供商的一些凭证:

providers:
    in_memory:
        memory:
            users:
                user1:
                    password: password1
                    roles: 'ROLE1'

现在此应用程序的代码将在 github 上发布,显然我想将凭据保密。

有没有办法从不同的(非版本控制的)文件加载此配置?我正在寻找一种解决方案,它允许我尽可能少地编辑代码,并尽可能避免更改所使用的安全提供程序。

您可以将密码定义为参数

在你的 security.yml 中:

providers:
    in_memory:
        memory:
            users:
                user1:
                    password: "%your_parameter_key%"
                    roles: 'ROLE1'

在你的 parameters.yml 中:

parameters:
    your_parameter_key: your_secret_password

通常,parameters.yml 应该被 GIT 忽略。