如何在不使用Microsoft页面的情况下在Azure AD B2C中使用graph api进行社交登录?

时间:2019-09-17 08:19:53

标签: c# azure azure-active-directory azure-ad-b2c azure-ad-graph-api

我将创建一个使用Azure AD B2C进行授权的应用程序,而我将不使用Microsoft的登录页面。在此自定义的登录页面中,我要使用社交登录。

我已经使用Graph Api(RPOC用户流)为Azure AD B2C注册用户完成了登录。我需要对社交网络用户登录执行相同的操作。

POST https://MyApplication.b2clogin.com/MyApplication.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_test_rpoc

BODY

username:******
password:******
grant_type:password
scope: ********
client_id: *******
response_type:token id_token

RESPONSE

{
   "access_token":,
   "token_type":,
   "expires_in":,
   "refresh_token":,
   "id_token":
}

是否存在任何此类图形API或我们可以从Azure AD B2C获取令牌以进行社交网络用户登录的任何方式。

2 个答案:

答案 0 :(得分:0)

如果社交IdP也支持ROPC,则有可能在自定义策略中实施它。 他们很有可能不会。

B2C允许自定义UI,因此,如果要自定义登录页面,最好使用它而不是ROPC。

答案 1 :(得分:0)

您可以实现的最接近的方法是在您的本机应用程序中放置一个Facebook按钮,该按钮将启动B2C策略并附加一个domaim_hint参数,以便B2C自动将用户重定向到Facebook。整个流程仍必须在Web视图中。像Facebook这样的社交IdP不支持ROPC。

https://docs.microsoft.com/en-us/azure/active-directory-b2c/direct-signin