从Azure AD B2C的User Flow中获取电话



我在Azure AD B2C中设置了一个使用电话/电子邮件注册身份提供程序的用户流。到目前为止,这个过程是有效的,但是我想获得用于登录的电话号码,以便将其存储在应用程序的用户配置文件中。我打算以后用这个号码发消息。

我已经找了好几个小时了,但是找不到任何方法可以把它作为索赔。

是否有任何方法可以检索值,例如在应用程序中使用单独的请求从B2C广告中获取值?

如果电话号码是为多因素身份验证收集的,您不能使用图形API读取它,也不能在使用内置用户流时将其作为声明。

如果您要切换到自定义策略,您可以修改策略以将其作为JWT令牌中的声明返回,为其写入自定义属性或使用API调用将其持久化到其他地方。

使用自定义策略,只要您使用默认声明,您仍然无法使用Graph API读取电话号码。您需要对starter策略进行一些修改,以将其保存到自定义属性或移动声明中,以便您可以使用图形API访问它。您还需要确保额外的声明与默认声明同步。

注意如果你使用文档中提到的电话注册登录,你将能够通过图形呼叫获得用户的号码。

的例子https://graph.microsoft.com/v1.0/users/{object_id}?$select=identities

"identities": [
{
"signInType": "phoneNumber",
"issuer": "contoso.onmicrosoft.com",
"issuerAssignedId": "+11231231234"
}
]

最新更新