我需要什么权限才能将托管标识分配给应用程序角色?

What permission do I need to assign managed identities to app roles?

我想授权多个逻辑应用程序访问由应用程序注册保护的 API 上的操作,其中有多个应用程序角色描述不同的操作。目前,目录管理员在创建逻辑应用程序后使用 New-AzureADServiceAppRoleAssignment 手动执行此操作,因为相关的服务主体直到那时才存在。

我宁愿这是自动化的,因为特别是在开发中,要求目录管理员重新 运行 这个脚本的手动工作非常繁琐。但是我不知道如何授予脚本帐户 - 链接到 DevOps 服务连接的服务主体 - 仅授予执行此操作的权限,而不是使其成为能够执行任何操作的目录管理员。如果服务连接是目录管理员,开发人员将能够向它提供脚本来告诉它创建或删除角色分配的任何组合,使他们能够让自己进入任何东西,并将应该能够阻止这种情况的人拒之门外.这是一个不可接受的安全漏洞。

允许自动化过程编写应用程序角色分配创建脚本所需的最低权限是多少,这在何处记录?

对于此要求,您只需将脚本帐户添加为应用程序的所有者(只需创建一个没有任何角色的新用户并将其添加为应用程序的所有者)。则只能在本应用中添加角色分配,不能对其他应用的角色分配进行其他操作。