我有一个Web应用程序,并计划将所有身份验证移动到Azure AD b2c。 我需要通过Graph API创建用户,现在我可以通过Graph API创建用户,我还需要添加声明
当添加用户或更新用户时,在我发现进一步谷歌搜索后,你需要添加扩展属性,我尝试添加扩展,但它似乎不适合我。任何帮助将非常感谢。
我使用的是MSFT https://github.com/AzureADQuickStarts/B2C-GraphAPI-DotNet提供的示例。我现在可以使用以下JSON
创建扩展 {
"accountEnabled": true,
"signInNames": [
{
"type": "emailAddress",
"value": "kart.kala1@test.com"
}
],
"creationType": "LocalAccount",
"displayName": "Joe Consumer",
"mailNickname": "joec",
"passwordProfile": {
"password": "P@$$word!",
"forceChangePasswordNextLogin": false
},
"passwordPolicies": "DisablePasswordExpiration",
"city": "San Diego",
"country": null,
"facsimileTelephoneNumber": null,
"givenName": "Joe",
"mail": null,
"mobile": null,
"otherMails": [],
"postalCode": "92130",
"preferredLanguage": null,
"state": "California",
"streetAddress": null,
"surname": "Consumer",
"telephoneNumber": null,
"extension_a550f811ccfe41f19e895f7931f7a28a_admin": "admin1"
}
extension_a550f811ccfe41f19e895f7931f7a28a_admin":" admin1" 属性为我添加扩展程序,但我通过sign-signin配置文件创建了一个用户azure portal然后添加了从另一个用户的" GET-USER" 获得的详细信息并重新使用了该名称。什么是字母数字值?它是创建运行时还是可以使用用户数据中的任何值来解析?我将有两个帐户阶段和生产,我无法解析值或更改它运行时。
答案 0 :(得分:2)
不要让代表发表评论,因此需要将其置于答案中。
我不完全确定问题是什么,但我已成功使用Graph API来设置/获取扩展数据(例如使用JSON属性extension_a550f811ccfe41f19e895f7931f7a28a_admin)。
我不确定您是如何获取用户信息的,但似乎它可能是名称,这可能不是唯一的。
要获取/设置B2C用户信息,您需要使用用户的objectId,因为它保证唯一。这意味着您需要将该objectId存储在该用户的数据库/存储中。