gpt4 book ai didi

Azure:使用 Terraform 服务主要用户最佳实践

转载 作者:行者123 更新时间:2023-12-03 23:16:11 25 4
gpt4 key购买 nike

当我们使用 Terraform 管理 Azure 上的基础设施时,我对应该如何使用服务原则用户感到有点困惑。

例如,是否建议有一个SP供整个团队共享?或者我们需要为每个用户设置一个 SP?

如果每个用户都有 SP,这会导致某些资源出现问题,例如本来由一个 SP 用户配置的 key 保管库,因此已为该用户定义了访问策略,而团队中的另一个人则拥有不同的 SP将无权从他们的笔记本电脑修改该保管库。

不确定我的问题是否足够清楚,但未能找到有关这些场景的具体细节。

非常感谢

最佳答案

当您有服务(非人类)执行操作时,应使用服务主体。例如,在这种情况下,Terraform 将使用服务主体来配置您的基础设施作为 CI/CD 管道的一部分。

服务主体(在任何环境中)通常配置为最低权限。原因是服务主体旨在用于单一且非常特定的目的,例如调用 Terraform 来配置您的环境。因此,你的服务主体可能有权从 Azure Key Vault 读取一组特定的 secret ,这些 secret 用于在特定资源组(或一组资源组)中预配资源。就是这样。

将此与用户帐户进行比较,例如您用于完成工作的帐户。您可以访问多个 Azure 订阅,可以在任何地方配置资源、删除资源、配置对资源的访问权限等等。

使用服务主体的主要原因在于安全性。使用上面的示例,如果服务主体的凭据(客户端 ID 和 secret )遭到泄露,那么人们对这些凭据唯一能做的就是从 key 保管库读取 secret 并在特定资源组中配置资源。

文档 here演示向服务主要贡献者授予整个订阅的权限。这比我上面给出的例子限制更少。但是,我怀疑它假设了另一种最佳实践,即您的开发/测试环境应该使用与生产和其他环境不同的 Azure 订阅。因此,虽然服务主体对专用于开发/测试的订阅拥有完整的贡献者权限,但它仍然无权访问组织拥有的其他订阅,也不能用于配置对资源中资源的访问权限。订阅。

关于Azure:使用 Terraform 服务主要用户最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50236145/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com