可以将travis机密提交公开回购?

时间:2018-08-01 01:28:26

标签: git security github token travis-ci

我在我的一些公共github仓库中使用了travis。对于部署步骤(例如,在github中创建发行版),我需要放入OAuth令牌(由travis加密)

此加密令牌可以安全地在公共回购源代码中一起提交吗?由于它是公共存储库,因此我可以想象任何人都可以看到源代码并获取我的加密令牌。尽管他们无法解密它,但是他们可以使用相同的令牌在我的github存储库中创建发行版?

但是,如果不提交源代码,什么是最好的管理方式?

2 个答案:

答案 0 :(得分:1)

是的。在您的.travis.yml中删除加密环境变量是安全的。 Travis会基于每个存储库生成加密/解密密钥,因此,当其他人分叉您的存储库或即使您重命名该存储库时,加密变量也会无效,您必须再次对其进行加密。

根据Travis CI,除了自动Travis流程外,任何人都不能解密该值。

唯一可能的泄漏是当您的一个合作者发疯并决定通过修改构建脚本来揭示该泄漏时。但是,由于您拥有信任系统,所以这不会成为问题。

答案 1 :(得分:0)

您绝不应将机密存储在公共/私人仓​​库中。您可以将信息存储在环境变量中。例如,您可以将.env文件添加到.gitignore,然后可以在其中或直接在环境中存储变量。