如何使用外部 CyberArk 保险库在免费版 Jenkins 中存储凭据?
在这里,您可以找到有关标准 jenkins 凭据插件的信息 - 该插件为外部存储提供 API。
但是在网上搜索了一段时间后,我发现:
1. Cyberark vault 仅在 Cloudbees Jenkins 上可用
2. HarshiCorp vault 插件免费提供
3. 这是一个很好的例子,错误的权限策略如何导致暴露所有证书。我试过了,就像魔术一样!:)
3 回答
似乎 CyberArk 发布了支持该场景的 Jenkins 插件: https ://docs.cyberark.com/Product-Doc/OnlineHelp/AAM-DAP/Latest/en/Content/Integrations/jenkins.htm
你真的不想在 Jenkins 中存储凭据(或任何敏感的秘密,真的)。它不是一个保险库,不应该被用作一个保险库。否则你的 Jenkins 服务器最终会成为攻击者的主要目标。
相反,集成您的 Jenkins 管道以仅在需要时将机密安全地拉入执行程序,并在构建/测试作业完成时丢弃。这很容易用Summon之类的东西完成,它已经与许多 vault 集成,包括Conjur(它也是 CyberArk 产品)。两者都是开源产品。
这篇博客文章描述了一种将 Jenkins 与保险库集成的方法,就像我上面描述的那样。
您可能想查看https://github.com/tmobile/t-vault。这将消除管理策略的需要。您可以在 jenkins 中为每个项目文件夹或作业创建一个保险箱。
您可以创建 approle 并授予 approle 对安全的访问权限。每个项目都可以使用相应的approle。您也可以授予个人访问保险箱的权限。然后,用户可以使用 webui 来创作和更新机密。