我有些困惑,我们在使用Terraform管理Azure基础架构时应该如何使用Service Principle用户。
例如,建议整个团队共享一个SP吗?还是每个用户都需要设置一个SP?
如果每个用户都有自己的SP,这会导致某些资源出现问题,例如密钥保管库将被配置为一个SP用户,因此访问策略已经为该用户定义,而团队中另一个使用不同SP的人将无法从他们的笔记本电脑修改该保管库。
不确定我的问题是否足够清晰,但我无法找到关于这些情况的具体细节。
非常感谢。
这样做可以实现以下几个目标: a)最小特权(生产环境被锁定), b)更改批准, c)开发人员在开发环境中的自由, d)生产环境的透明度和可访问性(因为任何人都可以查看terraform并创建PR)。
这样做当然会面临一些挑战(例如如何在部署管道中保护SP的凭据),但是,一个聪明的团队无法解决吗。