我想使用 Azure AD B2C 身份验证创建一个 Windows Phone 8.1 应用程序。作为基础,我使用了B2C Windows Desktop/Native Client 示例。
桌面应用程序运行良好。在我的 WP8.1 采用中,我遇到了第一个问题,我想获取令牌:
result = await authContext.AcquireTokenAsync(new string[] { Globals.clientId },
null, Globals.clientId, new Uri(Globals.redirectUri),
platformParams, Globals.signInPolicy);
虽然我为桌面应用程序获得了一个漂亮而闪亮的令牌,但对于 WP8.1 应用程序(从 WebAuthenticationBroker 返回后)我只得到一个 ...?code=...... 响应。
我不确定,但对我来说,WP8.1 库似乎在一种OIDC 模型中工作,其中第一次调用去授权,第二次调用到令牌端点。
从那里接我尝试继续使用收到的授权码
var result = await authContext.AcquireTokenByAuthorizationCodeAsync(authCode, new Uri(Globals.redirectUri),
credApp, new string[] { "" }, Globals.signInPolicy );
但无论我如何尝试传递ClientCredential或ClientAssertion我总是以一个普通的400 错误请求结束(没有返回更多详细信息)。
有人请告诉我我错在哪里和/或指出我正确的方向。