Azure Active Directory B2C:如何刷新令牌

时间:2016-10-12 11:21:36

标签: azure-ad-b2c

目前,我尝试将用户授权实施到iOS应用中。因此我们使用Active Directory B2C。

一切正常,除了我过期的令牌令人耳目一新。我将请求网址(fabrikamb2c.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_sign_in)称为access_tokenrefresh_token。响应似乎是有效的,access_token只要它没有过期就能很好地工作。

但是,如果我想获得一个新令牌(如此处所述:OAuth 2.0 authorization code flow;请参阅第4章),请求只会以 400:错误请求响应。

我无法找到,我做错了什么。你们现在是一种方式,如何调试这些请求或者有一些清单需要在Azure门户中配置什么?

谢谢!

编辑:这是我正在使用的请求:

POST /xxx.onmicrosoft.com/oauth2/v2.0/token?p=b2c_1_local-account-signupin HTTP/1.1
HOST: login.microsoftonline.com
content-type: application/x-www-form-urlencoded
content-length: 1148

client_id=xxx&refresh_token=xxx&grant_type=refresh_token&redirect_uri=urn:ietf:wg:oauth:2.0:oob

2 个答案:

答案 0 :(得分:0)

我认为您需要为scope参数指定一个值。 scope参数用于通知B2C您请求令牌的资源。目前,您很可能希望使用scope=<client_id>scope=openid

答案 1 :(得分:0)

感谢大家试图解决我的问题!它出来了,我使用的refresh_token无效。因此,如果您确定请求是正确的,并且您只得到错误请求响应,请再次检查参数。