让部署更快更安全,GitHub 无密码部署现已上线
GitHub 的 CI/CD 服务产品 GitHub Actions 现在支持使用 Open Identity Connect 凭证对 Hashicorp Vault、AWS、Azure 和 GCP 等云提供商进行身份验证,而无需使用长期凭证或密码。
云的现代开发通常需要针对云提供商对持续集成和持续部署(CI/CD)服务器进行身份验证,以便对已配置的基础设施进行更改。从历史上看,这是通过在云提供商中创建一个身份来实现的,CI/CD 服务器可以通过使用一组长期存在的、手动设置的凭证来假定这个身份。考虑到这些凭证的用途,它们的妥协终究会带来重大的业务风险。
OpenID Connect 身份验证协议是一种可互操作的机制,用于提供有关用户身份的可验证信息。假如用户的身份提供者是验证方能够信任的提供者,则可以在称为 ID 令牌的 Json Web 令牌(JWT) 中以声明的形式提供相关用户数据。
使用 GitHub Actions,第一步是在云提供商的身份和访问管理配置中将 GitHub 注册为外部身份源。在执行工作流时,管道可以访问管道唯一运行范围内的 ID 令牌。令牌包括令牌的期望受众、其持有者的标识符以及其他元数据。
然后,云提供商可以使用该信息来为任何的后续操作颁发短期凭证,例如访问令牌。目前 GitHub Actions 支持 Hashicorp Vault、亚马逊网络服务、Azure 和谷歌云平台。
自该新特性发布以来,人们对它的反响基本上是积极的,Hashicorp 创始人 Mitchell Hashimoto 在推特上写道:
最近发现 GitHub Actions 每次运行都会创建一个 OIDC 标识,因此可以将 Vault 配置为允许 w/Actions 身份认证,然后使用它来访问……任何内容。虽然需要进行一些清理, 但这是非常有希望的!
尽管反响热烈,但其采用速度似乎比预期的要慢,WhiteDuck DevOps 的咨询与运营主管 Nico Meisenzahl 在推特上写道:
在 #GitHub Actions 中使用 #OIDC 进行云提供商和 #Kubernetes 身份验证已经是一件大事件了吗?我虽然看到了它的很多优点,但已经采用它的人并不多。
继 GitHub 于 2021 年底发布该特性以来,其他 CI/CD 提供商也在其产品中添加了类似的集成。2022 年底发布的 GitLab 15.7 版本支持访问 Hashicorp Vault、AWS、Azure 和 GCP,而 Circle CI 于 2023 年 2 月宣布支持 GCP 和 AWS 集成。
所有计划都可以使用 GitHub Actions OIDC 登录云提供商,而无需额外的费用。
原文链接:
https://www.infoq.com/news/2023/03/passwordless-deployments-github/
相关阅读:
玩转 Github:三分钟教你如何用 Github 快速找到优秀的开源项目 (https://xie.infoq.cn/article/3a47c0e86ca4f1780a65cfdf3 )
8 个很酷的 GitHub 技巧 (https://xie.infoq.cn/article/442ddeac1eaada53fd5770750 )
声明:本文为 InfoQ 翻译,未经许可禁止转载。
点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!
人口不足千万、芯片厂近200家,以色列技术人如何在芯片领域“挖金山”?| 独家对话Pliops创始团队
马斯克将起诉微软,称其使用 Twitter 数据“非法”训练GPT,吃瓜网友:事情变得更有趣了!
微信扫码关注该文公众号作者