如何在 Angular 应用部署中安全地管理环境变量

问题描述 投票:0回答:1

我有一个

environment.ts
文件;

export const environment = { token: '345' };

和一个

enviroment.development.ts
文件:

export const environment = { token: '123' };

两者都在公共 GitHub 存储库上。我想部署一个应用程序并将令牌值设置为真正的键值,但是在 Netlify 或 Vercel 上使用环境变量不起作用,因为我为项目设置了它们。我不想在我的应用程序的任何部分写入真正的访问令牌。如何部署应用程序并将假代币值更改为真实值?如果我将真实值放入

src/environments/environment.development.ts
中,它将公开可用,但我必须这样做,因为这是 Netlify 或 Vercel 从中获取代码的地方。

如果我添加:

  production: true,
  token: '345',

数值仍然没有改变。

以下: https://angular.io/guide/build#configure-target-specific-file-replacements

angular
1个回答
0
投票

在您的项目中会有

.gitignore
文件,在这里您可以包含您的
environment
文件夹,提交甚至不会显示这些文件,它们在您的本地系统中是安全的,您可以使用它们从本地进行部署。

另一种方法是使用

Deploy keys
(github),您可以在其中安全地存储密钥,然后在部署代码时使用带有 Node.js 的脚本来创建文件。

如何在 Angular 项目中保守源代码的秘密?!

© www.soinside.com 2019 - 2024. All rights reserved.