如何创建适用于多个资源组的 Azure DevOps 服务连接

How to create Azure DevOps Service Connection scoped to multiple Resource Groups

我有一个项目,其资源跨越 3 个资源组。我想创建一个适用于所有这些资源组的服务连接,以便我可以通过该服务连接在一个地方管理访问。目前我为每个资源组创建了 3 个服务连接。我不想将其范围限定为订阅,因为还有其他团队在该订阅中处理项目。以后给我维护和审计问题

如果我创建一个服务主体并将其分配给 3 个资源组,然后将此服务主体附加到服务连接,这样的设计会好吗?

有没有更好的方法来实现这个?

您不必手动创建服务主体。 您可以使用该界面创建服务主体、授予对第一个资源组的权限并自动为您配置连接
一旦完成,查看服务连接以确定正在使用的服务主体,并授予它对其他资源组的权限
是的,这是一个很好的设计,与 3 个服务主体相比,唯一的缺点是您 对 Azure DevOps 中的谁可以通过对service 服务连接(因为你只有一个而不是 3 个)

当您在 Azure DevOps 中创建新的服务连接时,它会创建一个 Azure AD 应用程序注册,并会为您选择的资源组创建一个新的服务主体。

所以您可以转到任何资源组,然后使用访问控制 (IAM) 添加主体。 Select 添加角色分配选项,然后 select 在角色网格中将角色作为贡献者,按下一步。在下一个屏幕中,select 用户、组或服务主体作为分配访问权限的选项。点击+Select成员,搜索我们AD注册的应用名称,显示名称然后select相同的结果,点击select按钮。最后,单击审阅 + 分配按钮。

我已经写了一篇详细的文章来解释步骤,你可以看看那个here