azure cli 相当于 Add-AzureADDirectoryRoleMember

azure cli equivalent of Add-AzureADDirectoryRoleMember

我正在尝试分配 Azure AD Roles(而不是 Azure roles),例如Directory Writersservice principal.

我找到的唯一文档是在 https://docs.microsoft.com/en-us/powershell/module/azuread/add-azureaddirectoryrolemember?view=azureadps-2.0 处使用 powershell 和命令 Add-AzureADDirectoryRoleMember

我正在寻找和 azure cli 相同的版本。存在吗?

举个例子就好了,比如说

ApplicationId: 3213b664-175c-46ca-944b-247c58abcda5
Object ID: c79e0a39-44cd-475c-8bc4-1f679f85afdd
Directory Writers: 9360feb5-f418-4baa-8175-e2a00bac4301

谢谢。

Azure CLI 中没有用于分配 AAD 目录角色的内置命令。

这是一个使用 Microsoft Graph API(参考 here)的解决方法。

$Body = @{ 
    "roleDefinitionId" = "{directory role id}"; 
    "principalId"      = "{service principal object id}"; 
    "directoryScopeId" = "/"
} | ConvertTo-Json -Compress
    
$Body = $Body.Replace('"', '\"')

az rest -m post -u "https://graph.microsoft.com/beta/roleManagement/directory/roleAssignments" -b "$Body"

关于如何获得 {directory role id},您也可以使用带有过滤器的 Microsoft Graph API List directoryRoles