我使用Microsoft Graph API PHP SDK在Azure Active Directory B2C中添加用户。我设法使用userPrincipalName
name@mytenantid.onmicrosoft.com
创建用户。
我无法添加具有GMail地址的用户,例如john.doe@gmail.com
。
我尝试添加signInNames
集合,但收到了以下回复:
Fatal error: Uncaught GuzzleHttp\Exception\ClientException: Client error:
POST https://graph.microsoft.com/v1.0/users resulted in a 400 Bad Request
response:
{ "error": {
"code": "Request_BadRequest",
"message": "Invalid property 'signInNames'.",
"innerError": (truncated...)
这是我的JSON请求正文:
{
"accountEnabled": true,
"displayName": "John Doe",
"userPrincipalName": "john@doe.fr",
"creationType": "LocalAccount",
"passwordProfile" : {
"forceChangePasswordNextSignIn": true,
"password": "P@!ssWor?D"
},
"signInNames": [
{
"type": "emailAddress",
"value": "john@doe.fr"
}
]
}
答案 0 :(得分:2)
您将Microsoft Graph API与Azure AD Graph API混淆了。这是两个不同的API。虽然它们共享许多功能,但对这些API的调用是不可互换的。
Microsoft Graph API中的User object不支持signInNames
属性。这就是它返回错误的原因。
目前Microsoft Graph API不支持本地帐户用户。