Active directory 写入请求仅在包含的实体、Microsoft Graph API上受支持,当尝试修补/发布以将AD应用程序角色分配给用户时

Active directory 写入请求仅在包含的实体、Microsoft Graph API上受支持,当尝试修补/发布以将AD应用程序角色分配给用户时,active-directory,azure-active-directory,microsoft-graph-api,Active Directory,Azure Active Directory,Microsoft Graph Api,我正在尝试使用Microsoft Graph为我们广告组中的用户分配特定于应用程序的角色 我将请求发送到的链接: https://graph.microsoft.com/beta/users/{我要将角色分配给的用户ID}/approvalsignments/{广告企业应用程序的对象ID} 在请求中: {“id”:“我试图分配给用户的角色的id”} 错误: “code”:“BadRequest”, “消息”:“写入请求仅在包含的实体上受支持”, 文档没有很好地定义示例中的参数,我尝试了各种可能性

我正在尝试使用Microsoft Graph为我们广告组中的用户分配特定于应用程序的角色

我将请求发送到的链接:

https://graph.microsoft.com/beta/users/{我要将角色分配给的用户ID}/approvalsignments/{广告企业应用程序的对象ID}

在请求中:

{“id”:“我试图分配给用户的角色的id”}

错误:

“code”:“BadRequest”,
“消息”:“写入请求仅在包含的实体上受支持”,


文档没有很好地定义示例中的参数,我尝试了各种可能性,但这是我得到的唯一有意义的结果。

Microsoft Graph当前不支持这一点。要创建应用程序角色分配,您需要使用Azure广告图:

POST https://graph.windows.net/myorganization/users/{user-object-id}/appRoleAssignments

{
    "principalId": "{user-object-id}",
    "resourceId": "{service-principal-object-id}",
    "id": "{app-role-id}"
}

我正在尝试将现有用户分配给现有角色。但我认为你的措辞只是要指出,这样做的过程是“创建”应用程序角色分配。如果这还不可能,我不想在我的应用程序中获得2个图形令牌,并通过2个不同的api进行操作,因为我在应用程序中有其他主要图形功能。我将通过将组分配给角色,然后通过图表从这些组中添加/删除人员来绕过它。谢谢你把这一切清理干净!是的,如果你有许可证可以将组分配给应用程序,这可能是一个更好的方法。任何关于获取Azure AD JWT的提示都将不胜感激。我可以在Azure AD Graph Explorer上获得上述帖子,但在代码上无法达到同样的效果。@JariTurkia您最好问一个新问题(并将其标记为[Azure active directory]和[microsoft Graph])。别忘了包括你迄今为止所做的尝试,以及你所面临的问题。