在 CI 环境中保护密码
Posted
技术标签:
【中文标题】在 CI 环境中保护密码【英文标题】:Protect passwords in CI environment 【发布时间】:2016-05-10 09:17:59 【问题描述】:因此,您希望使用 Jenkins 或 Bamboo 等 CI 环境部署到服务器是一种常见情况。这也意味着您需要将端点凭据存储在某处。
执行此操作的最佳做法是什么?在文本文件中以纯文本形式保存密码当然是简单的方法,但通常是不可能的。
【问题讨论】:
我会说这是一个相当广泛的问题......我想到了通过环境变量进行注入。这就是 Jenkins 做这件事的人数(AFAIK)。 【参考方案1】:如果您使用 Maven 进行部署,您可以加密您的密码,请参阅:https://maven.apache.org/guides/mini/guide-encryption.html
【讨论】:
【参考方案2】:jenkins 我们一般使用MaskPasswords plugin,我不确定是竹子
【讨论】:
在 Bamboo 中设置构建计划变量是可行的方法。如果 password 是变量名的一部分,则该工具将在展开时屏蔽变量值。 @KenBrittain:密码在 Bamboo 运行时暴露。您可以通过ps
查看它们。【参考方案3】:
使用Jenkins credentials plugin 存储您的密码; Jenkins 在存储在磁盘上的配置中对它们进行加密。请注意,可以解密密码,因此请确保您的 Jenkins 配置文件受到充分保护。
【讨论】:
以上是关于在 CI 环境中保护密码的主要内容,如果未能解决你的问题,请参考以下文章
Nginx环境使用auth_basic密码保护wordpress后台登录界面
使用 Firebase 电子邮件/密码身份验证的 CSRF 保护
如何在Jenkins,Git和Gradle的持续集成环境中处理用户名/密码? [关闭]