我可以通过图形api在Azure AD B2C租户中成功创建用户。我也可以删除用户。
当我尝试再次插入具有相同signInName的用户时,请求将失败并显示以下消息:
"odata.error": {
"code": "Request_BadRequest",
"message": {
"lang": "en",
"value": "Another object with the same value for property signInNames already exists."
},
"date": "2016-10-11T15:53:58",
"requestId": "911fcff7-f2f0-4126-aa1e-3c03a757ac0d",
"values": [
{
"item": "PropertyName",
"value": "signInNames"
},
{
"item": "PropertyErrorCode",
"value": "ObjectConflict"
}
]
}
是否有可能加快速度?
答案 0 :(得分:2)
创建服务主体时,您还创建了一个应用程序。 使用此命令也可以删除应用程序: remove-azurerdadapplication -objectId [key]
答案 1 :(得分:1)
我在Azure AD中遇到了同样的问题。
我不认为您的代码中可以执行任何操作来加快速度。 (Azure AD PM可以回答以下问题:删除操作在整个系统中传播的真正SLA是什么)
我想你所能做的就是考虑这个错误,就好像当你收到这个错误时用户真的在那里(尽管你可以在列表中看到它)。
不确定您的具体情况,但对我们来说这是一个非常有优势的案例。
我们在案例中考虑的另一个解决方法是:根本不删除用户,如果以后有可能需要具有相同ID的用户,则删除他们的角色
因为当用户被删除时,ObjectID或UserKey发生了变化,我们的系统中有对该ObjectId的引用,并且该对象ID将不再存在于Azure AD中,所以我们决定在大多数情况下保留用户,除非我们真的不得不删除它们。