我们正在尝试将一些密钥和机密从 .env 移动到 AWS Parameter Store 以提高安全性。我们有两个 EC2 实例,一个用于生产环境,另一个用于暂存环境。每个实例都有在 public 文件夹下的 .env 文件中定义的键/值,因此它对公共访问是隐藏的。
.env 文件中的键在生产环境和暂存环境之间是相同的,只是值不同。所以加载这些值的代码在生产和登台之间是相同的。现在我们正在尝试将这些键/值移动到 AWS 参数存储,并且由于 Parameter Store 是账户级别的范围,
有没有办法根据 EC2 实例分配不同的值?
例如
secret = getSecretFromEnv('MY_KEY'); // different values are loaded depending on EC2 instance
已经成为(我们试图避免做的事情)
if prod {
secret = getSecureParameterFromAws('MY_PROD_KEY');
} else {
secret = getSecureParameterFromAws('MY_STAGING_KEY');
}