VPC 中的 Elastic Beanstalk 环境变量
Posted
技术标签:
【中文标题】VPC 中的 Elastic Beanstalk 环境变量【英文标题】:Elastic Beanstalk Environment Variables in VPC 【发布时间】:2020-11-09 08:08:22 【问题描述】:我有一个 Django 应用程序的 Elastic Beanstalk 实例。我想设置环境变量,但是,我知道它不如使用 AWS Secrets Manager 之类的安全。
但是,如果我的实例位于 VPC 的私有子网中,这是否意味着没有人可以访问这些环境变量?还是我仍然应该使用 AWS Secrets Manager 之类的东西?
谢谢!!
【问题讨论】:
【参考方案1】:但是,如果我的实例位于 VPC 的私有子网中,这是否意味着没有人可以访问这些环境变量?
不知道你是什么意思。 EB 环境变量将在 EB 控制台中可用,这意味着可以使用 AWS CLI、EB CLI 或 SDK 访问它们。只有您的实例位于私有子网中,而不是 EB 服务本身。
但是,您可以使用 IAM 来控制谁可以访问 EB 服务以及他们可以执行哪些操作。如果您的帐户中有多个用户,这一点尤其重要。
还是我应该使用 AWS Secrets Manager 之类的东西?
这个或AWS Systems Manager Parameter Store 通常被认为是比 EB 环境变量更好的选择。它们仍不会位于私有子网中,但您可以使用 IAM 规则控制对它们的访问。
但是,如果您决定使用 AWS Secrets Manager
或 Parameter Store
,则必须同时升级您的 EB 实例和应用程序。
具体来说,EB 实例将需要 IAM 角色才能访问机密。由于您使用的是 NAT 网关,因此无需更改 VPC。
您的应用程序还需要使用 AWS CLI 或 SDK 从相应的服务中获取密钥。根据您的处理方式,有很多可能的情况,在我看来,这些情况目前超出了范围。
【讨论】:
谢谢马尔辛!说得通。你会推荐Parameter store
还是Secrets manager
?
嗨。没问题。 Parameter Store 是免费的,Secrets Manager 不是。但是您可以使用 SM 自动轮换数据库凭证。因此,如果您的首要任务是安全,那么 SM 是更好的选择。
非常感谢!真的很感谢!!!我会在 1 分钟内接受答案 - 因为你回答得这么快,所以我不会接受 :-)!!
@NGI。哈哈哈。当我检查 SO 时你碰巧发了:-)以上是关于VPC 中的 Elastic Beanstalk 环境变量的主要内容,如果未能解决你的问题,请参考以下文章
从 VPC 中的 Elastic Beanstalk 实例访问 RDS
没有 NAT 的私有 VPC 中的 Elastic Beanstalk 应用程序
如何使用 CLI 为 Elastic Beanstalk 配置 VPC