通过 ARM 模板为服务连接用户分配角色
Assign the Service Connection User a role through ARM template
我们最近才开始在 Azure 中为我们的一些应用程序使用应用程序配置服务。
作为设置的一部分,我们删除了作为可能的身份验证方法的访问密钥。这非常有效,我们已将数据所有者权限分配给我们的团队,以便他们可以管理服务并且每个人都很高兴。
我们想到了在我们的构建和发布 yaml 管道中使用应用程序配置服务的好主意。我们找到了一个合适的任务,但是附加到我们在 Azure Devops 中用于部署到 Azure 的服务连接的用户没有访问配置存储的权限。
我们希望能够在我们为应用程序配置服务创建的 arm 模板中分配此权限。但问题是我们找不到分配给该用户的主要 ID。
老实说,我对 AAD 没有那么多经验,所以我可能在这里遗漏了一些东西。 ServicePrincipleId 不起作用,每当我尝试使用它时,天蓝色告诉我该用户不存在。每当我尝试管理服务连接时,我都会被重定向到一个应用程序注册页面,我也不明白这一点。
我的下一步是让我们的管理员手动将此权限分配给服务连接用户,看看我是否可以从该角色分配中提取主要 ID。
我的问题是,为什么服务原则不起作用?如何从服务连接中提取主体 ID?
你能试试下面的步骤吗?
- 在 Azure DevOps 中,转到包含目标管道的项目。在 lower-left 角落,select 项目设置。
- Select 服务连接。
- Select 管理服务主体。
- 从那里,您应该能够找到您的服务主体的 objectId,它唯一标识您的 SP。
此外,这些帖子也是了解 AAD 应用程序和服务主体的重要资源:
我们最近才开始在 Azure 中为我们的一些应用程序使用应用程序配置服务。
作为设置的一部分,我们删除了作为可能的身份验证方法的访问密钥。这非常有效,我们已将数据所有者权限分配给我们的团队,以便他们可以管理服务并且每个人都很高兴。
我们想到了在我们的构建和发布 yaml 管道中使用应用程序配置服务的好主意。我们找到了一个合适的任务,但是附加到我们在 Azure Devops 中用于部署到 Azure 的服务连接的用户没有访问配置存储的权限。
我们希望能够在我们为应用程序配置服务创建的 arm 模板中分配此权限。但问题是我们找不到分配给该用户的主要 ID。
老实说,我对 AAD 没有那么多经验,所以我可能在这里遗漏了一些东西。 ServicePrincipleId 不起作用,每当我尝试使用它时,天蓝色告诉我该用户不存在。每当我尝试管理服务连接时,我都会被重定向到一个应用程序注册页面,我也不明白这一点。
我的下一步是让我们的管理员手动将此权限分配给服务连接用户,看看我是否可以从该角色分配中提取主要 ID。
我的问题是,为什么服务原则不起作用?如何从服务连接中提取主体 ID?
你能试试下面的步骤吗?
- 在 Azure DevOps 中,转到包含目标管道的项目。在 lower-left 角落,select 项目设置。
- Select 服务连接。
- Select 管理服务主体。
- 从那里,您应该能够找到您的服务主体的 objectId,它唯一标识您的 SP。
此外,这些帖子也是了解 AAD 应用程序和服务主体的重要资源: