使用图表API

时间:2017-04-26 06:51:21

标签: c# azure azure-ad-b2c

我有一个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" 获得的详细信息并重新使用了该名称。什么是字母数字值?它是创建运行时还是可以使用用户数据中的任何值来解析?我将有两个帐户阶段和生产,我无法解析值或更改它运行时。

1 个答案:

答案 0 :(得分:2)

不要让代表发表评论,因此需要将其置于答案中。

我不完全确定问题是什么,但我已成功使用Graph API来设置/获取扩展数据(例如使用JSON属性extension_a550f811ccfe41f19e895f7931f7a28a_admin)。

我不确定您是如何获取用户信息的,但似乎它可能是名称,这可能不是唯一的。

要获取/设置B2C用户信息,您需要使用用户的objectId,因为它保证唯一。这意味着您需要将该objectId存储在该用户的数据库/存储中。