如何使用 Graph API 读取 Azure B2C 自定义属性(与 Azure AD Graph 兼容)

Ped*_*roF 6 azure-ad-b2c microsoft-graph-api

截至今天,文档建议使用 Microsoft Graph 而不是 Azure AD Graph API 来访问 Azure AD/B2C 资源。

之前,使用 Azure AD Graph API,我们可以使用https://graph.windows.net/[tenant]/users/1a2a9c4d-fc59-4fd9-ad14-b72b549cdf6a?api-version=2013-11-08等查询

响应包含 Azure B2C 自定义属性(在 Azure 门户上创建)

{
        "odata.metadata": "https://graph.windows.net/<tenant>/$metadata#directoryObjects/Microsoft.DirectoryServices.User",
        "value": [
            {
                "objectId": "00000eab-603a-4de2-9d25-d3821e7d6583",
                ...
                "extension_3a4189d71ad149c6ab5e65ac45bd6add_MyAttribute1": "something"
            }
        ] 
}
Run Code Online (Sandbox Code Playgroud)

Graph API 不会发生这种情况,仅返回一些“基本”属性 https://graph.microsoft.com/v1.0/users/00000eab-603a-4de2-9d25-d3821e7d6583

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users/$entity",
    "id": "00000eab-603a-4de2-9d25-d3821e7d6583",
    ...
}
Run Code Online (Sandbox Code Playgroud)

还尝试显式选择属性但未返回扩展值

...graph.microsoft.com/v1.0/users/00000eab-603a-4de2-9d25-d3821e7d6583/?$select=id,extension_3a4189d71ad149c6ab5e65ac45bd6add_MyAttribute1

如何使用 Graph API 读取 Azure B2C 自定义属性?

spo*_*ahn 4

返回自定义属性:

要求

GET https://graph.windows.net/mytenant.onmicrosoft.com/users/8b2ceb5d-4f45-4e42-b979-419119df4eaf?api-version=1.6
Run Code Online (Sandbox Code Playgroud)

回复

{
      "odata.type": "Microsoft.DirectoryServices.User",
      "objectType": "User",
      "objectId": "8b2ceb5d-4f45-4e42-b979-419119df4eaf",
      ...
      "userType": "Member",
      "extension_5c5668a4ddb44c27b0d55cb412c41787_loyaltyId": "some value from the demo"
}
Run Code Online (Sandbox Code Playgroud)

来源:这来自示例应用程序:B2C-GraphAPI-DotNet


通过 Azure 门户查找扩展指南

如何进行 Azure 广告应用注册

Azure 广告应用注册

以上是针对内置策略的。

  • “扩展”属性中的 GUID 从哪里来?我在B2C门户网站上看不到它...... (3认同)
  • 它们由 Azure AD Graph API 返回,而不是由 Graph API 返回。这就是问题所在。Azure AD 图形:https://graph.windows.net/[tenant]/users/1a2a9c4d-fc59-4fd9-ad14-b72b549cdf6a?api-version=2013-11-08 图形 API:https://graph.microsoft。 com/v1.0/users/00000eab-603a-4de2-9d25-d3821e7d6583 您可以使用 Graph Explorer 并尝试:https://developer.microsoft.com/en-us/graph/graph-explorer# (2认同)