Azure的AD图形API ApproleAssignment不允许零GUID
问题描述:
我正在尝试添加AppRoleAssignment
为用户时出现错误:Azure的AD图形API ApproleAssignment不允许零GUID
{ “odata.error”:{ “代码”: “Request_BadRequest”,” “date”:“2017-10-21T14:49:42”,“requestId”:“3aacf13e-1”,“value”:“ 5620-40da-8fd0-fb2d4130f171" , “价值观”:空}}
当我用一个实际的ApproleId
,一切工作正常。但是,当我设置
AppRoleAssignment.Id = new Guid();
我得到上述错误;
这是没有意义的,因为文档说这是允许的 通过设置零GUID和在SO上的其他帖子中一直强调。
我在这里失踪了什么?
全码:
AppRoleAssignment appRoleAssignment = new AppRoleAssignment()
{
Id = new Guid(),
ResourceId = Guid.Parse(servicePrincipal.ObjectId),
PrincipalId = Guid.Parse(user.ObjectId),
PrincipalType = "User"
};
user.AppRoleAssignments.Add(appRoleAssignment);
await user.UpdateAsync();
答
根据我的经验,有两种情况,我们可能会得到这个问题。
首先,如果在服务主体中存在想要分配默认角色的自定义角色。
其次,如果我们已经将默认角色分配给那个人之前。
请检查您是否处于这两种情况之一,并让我知道你是否仍然有这个问题的问题。