用于部署事件网格的 Azure DevOps 管道,由来自 2 个不同 Azure 订阅的资源组成

问题描述

我有两个订阅:开发和生产。我想在来自开发订阅的现有 event grid 上部署 azure account storage,但从生产订阅触发现有 azure function app。我有合适的 arm 模板,当我指向一个 azure subscription 内的资源时,它通常会起作用。当然,我在 Azure Resource Manager 中有适当的分离服务原则和服务连接 (azure devops) 用于部署资源。当我使用 prod 服务连接时,我对帐户存储的写访问权限有问题,当我使用 dev 服务连接时,我对 azure 函数的写访问权限有问题。

我可以以某种方式省略它或以其他方式实现吗?

解决方法

要解决此问题,您需要使用服务主体对开发订阅和生产订阅都具有权限的服务连接。

例如,您使用 prod 服务连接,然后直接在门户中导航到开发订阅/开发订阅的存储帐户 -> 添加 RBAC role 例如Contributor 到服务主体,如下所示。

enter image description here

您也可以使用开发服务连接,直接导航到 prod subscription/prod subscription 中的 function app 以授予上述角色。或者您可以创建一个新的服务连接,授予这两个角色,这取决于您。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...