二头肌可用于创建角色分配,如下所示:
resource RoleAssignment 'Microsoft.Authorization/roleAssignments@2020-10-01-preview' = {
name: guid(managementGroup().id, RoleDefinitionId, principalId)
properties: {
roleDefinitionId: roleDefinition.id
principalId: principalId
principalType: principalType
}
}如果主体类型为“Service主体”,则似乎需要Azure门户的企业应用程序页面中的应用程序id:

有人知道如何通过编程获得这个信息吗?如果不可能使用二头肌,那么也许是PowerShell?
发布于 2022-11-21 10:13:37
要通过Application ID PowerShell获取服务主体,可以使用以下命令:
(Get-AzADServicePrincipal -DisplayName AppName).AppId我尝试在我的环境中复制相同的结果,结果如下:
我有一个名为ClientApp的服务主体,并成功地获得了它的应用程序ID,如下所示:
(Get-AzADServicePrincipal -DisplayName ClientApp).AppId响应:

发布于 2022-11-21 17:41:56
您可以使用资源的输出,如:
resource workflows_la 'Microsoft.Logic/workflows@2017-07-01' = {
name: 'la-${env_id}-test'
location: location
identity: {
type: 'SystemAssigned'
}
output logicapp_managed_identity string = workflows_la.identity.principalId因此,您可以在角色辅助资源中使用:
resource roleAssignmentlogicApp 'Microsoft.Authorization/roleAssignments@2020-04-01-preview' = {
scope: Storage
name: guid(Storage.id, managed_identity_logic_app, roleDefinitionResourceId)
properties: {
roleDefinitionId: roleDefinitionResourceId
principalId: managed_identity_logic_app
}
}https://stackoverflow.com/questions/74516817
复制相似问题