部署到 AWS 时确保我的环境参数安全

发布于 2025-01-09 10:21:11 字数 141 浏览 0 评论 0原文

我在 Laravel 8 中有一个项目,并且有一些秘密的环境参数,我不想将它们与我的应用程序一起发送到 github。我将使用 github 操作将我的应用程序部署到 AWS beanstalk。当部署所有应用程序时,如何保证所有机密的安全并将它们放入 EC2 实例。

I have a project in Laravel 8 and I have some secret env parameters and I do not want to ship them with my application to github. I will deploy my application with github actions to AWS beanstalk. How do I keep all the secrets secure and put them to EC2 instance when all application deployed.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

困倦 2025-01-16 10:21:11

有多种方法可以做到这一点,您不应该将您的 env 文件与您的应用程序一起发送到 github。

  1. 您可以使用beanstalk自己的参数存储页面。但是,如果您这样做,有权访问您的 AWS 账户的其他开发人员就可以看到所有 env 参数。这是一个简单的键值存储页面。

    Benastalk 面板 -> (选择您的环境)->配置->软件

beanstalk image

  1. 在系统管理器下有一个名为 Parameter Store 的服务(这是我的首选方式),

在这里,您可以安全地添加任意数量的参数。您可以简单地添加字符串参数以及安全(如密码或 API 密钥)字符串以及整数,但字符串和安全类型是我的最爱。

您可以按路径拆分所有参数,如 "APP_NAME/DB_NAME" 等。

< img src="https://i.sstatic.net/Zahen.png" alt="自定义参数存储索引">

您应该将所有参数从 Parameter Store 获取到您的 EC2 实例,并将它们放在新创建的实例上.env 文件。

  1. github actions中有github Secrets,你可以将所有的Secret参数放到github Secrets页面。您可以从 github 秘密中获取所有秘密,并将您的秘密放入您的应用程序中,并直接从 github 发送到 AWS。

您可以转到存储库中的设置并查看此页面:

github 操作设置

There are multiple ways to do that and you should not send your env file with your application to github.

  1. You can use beanstalk's own parameter store page. However, if you do that another developer who has access to your AWS account can see all the env parameters. It is simple key value store page.

    Benastalk Panel -> (Select Your Environment) -> Configuration -> Software

beanstalk image

  1. Under the systems manager there is a service called Parameter Store (this is my prefered way)

In here, You can add as much as parameter as you like securely. You can simply add string parameters as well as secure (like password or api keys) strings also integers but string and secure types are my favorites.

You can split all you parameters by path like "APP_NAME/DB_NAME" etc.

custom parameter store index

You should get all the parameters from Parameter Store to your EC2 instance and put them on newly created .env file.

  1. There is github secrets in github actions and you can put all your secret parameters to github secrets page. You can get all the secrets from github secrets and put your secrets to your application and ship from github to AWS directly.

You can go to settings in your repository and see this page:

github actions settings

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文