Anc*_*nek 29 environment-variables npm font-awesome
我有一个项目,我们使用 font awesome 5 库。我按照此处编写的说明操作,并添加了一个.npmrc带有我的身份验证令牌的文件。
将其放入回购中是一种安全的行为吗?我希望开发人员可以访问它,但是如果 repo 公开,我们可能会暴露令牌。
在这种情况下,最佳做法是什么?
Bri*_*lip 41
更新 2021-05-02
这个答案仍然有问题 - 请参阅下面的评论。我再也无法访问私人($paid)npm 帐户,因此我无法再通过测试来回答问题。
也许试试@konyak 的回答。
这绝对不是一个安全的行为放在任何混帐令牌检查文件,包括.npmrc。
以下是您的团队可以采取的安全利用 npm 令牌的步骤。
有两种不同的环境需要考虑:
按照您在问题中链接的全局设置说明,不是解决方案。
创建类似于“每个项目”说明的 .npmrc 文件,但将您的真实令牌替换为变量名,前缀为$。IE:
@fontawesome:registry=https://npm.fontawesome.com/
//npm.fontawesome.com/:_authToken=$TOKEN
Run Code Online (Sandbox Code Playgroud)
npm 将检测一个名为.env. 因此,在.gitignored .env 文件中,添加您的密钥值对,即:
TOKEN=ABC123
Run Code Online (Sandbox Code Playgroud)
根据npm-config文档,您还可以使用“NPM_CONFIG_”作为变量名称的前缀,即:
NPM_CONFIG_TOKEN=ABC123
Run Code Online (Sandbox Code Playgroud)
现在,当 dev 运行时npm i,字体很棒的依赖项将从私有仓库加载。
注意:不要遵循当前关于环境变量语法的 npm-config 文档!请参阅此堆栈溢出答案,即:
BAD npm-config ENVIRONMENT VAR SYNTAX
${TOKEN}
Run Code Online (Sandbox Code Playgroud)
GOOD npm-config ENVIRONMENT VAR SYNTAX
$TOKEN
Run Code Online (Sandbox Code Playgroud)
执行上面本地开发部分中的所有步骤,加上:
如果您的应用程序主机是 Netlify,请参阅他们的构建环境变量文档。
kon*_*yak 26
https://docs.npmjs.com/using-private-packages-in-a-ci-cd-workflow
将您的秘密令牌导出到您的会话中,例如, export NPM_TOKEN="00000000-0000-0000-0000-000000000000"
在你的里面~/.npmrc,添加//registry.npmjs.org/:_authToken=${NPM_TOKEN}
| 归档时间: |
|
| 查看次数: |
33294 次 |
| 最近记录: |