Azure CLI中的New-AzureADServiceAppRoleAssignment?

问题描述

Azure CLI世界中是否有以下命令的挂件?

New-AzureADServiceAppRoleAssignment -ObjectId $clientManagedIdentityObjectId -Id $serverAppRoleId -ResourceId $serverEnterpriseAppObjectId -PrincipalId $clientManagedIdentityObjectId

我想将托管身份添加到企业应用程序中的appRole

az ad app permission add似乎做不正确,或者我误解了文档不足的参数。

解决方法

没有内置的cli命令可以执行此操作,您可以选择使用az rest直接调用Microsoft Graph-Grant an appRoleAssignment to a service principal

首先,如下所示将一个.json文件存储到您的Powershell执行位置,这些值的含义请参见this。例如我的位置是PS C:\Users\joyw>,我将文件存储在C:\Users\joyw文件夹中。

{
  "principalId": "principalId-value","resourceId": "resourceId-value","appRoleId": "appRoleId-value"
}

然后运行命令

az rest --method POST --uri "https://graph.microsoft.com/v1.0/servicePrincipals/{object-id of your Managed identity}/appRoleAssignments" --headers 'Content-Type=application/json' --body `@body.json

enter image description here