我们使用Microsoft V2.0 OpendID协议作为SSO方法,使MSA和AAD用户登录我们的应用程序。
以下是我们在授权网址中使用的范围
openid profile email user.read
用户同意后,使用我们从令牌API(/oauth2/v2.0/token
- scope = user.read
)获取的访问令牌,我们正在对https://graph.microsoft.com/v1.0/me
进行Microsoft Graph调用以获取电子邮件和其他用户信息。
直到2014年12月3日,上述电话按预期工作。但是从2017年3月13日开始,我们看到API的奇怪行为。
对于刚来我们的应用程序登录的MSA用户,https://graph.microsoft.com/v1.0/me
会抛出以下错误。
错误1:
{
"error": {
"code": "RetryWithPuid",
"message": "Please retry With PUID in either token or URL",
"innerError": {
"request-id": "18386e9b-c30e-459d-b816-f67f4a843874",
"date": "2018-03-14T10:42:11"
}
}
}
错误2:
{
"error": {
"code": "UnknownError",
"message": "{\r\n \"ErrorCode\": \"ErrorUserResolutionFailedAfterMailboxSuccessfullyProvisioned\",\r\n \"Message\": \"Exception of type 'Microsoft.Fast.Profile.Core.Exception.ProfileNotFoundException' was thrown.\",\r\n \"Target\": null,\r\n \"Details\": null,\r\n \"InnerError\": null,\r\n \"InstanceAnnotations\": []\r\n}",
"innerError": {
"request-id": "23c18edc-d451-4056-ab7c-0c23fb7b77f5",
"date": "2018-03-14T08:03:11"
}
}
}
以上错误不稳定。对于已登录我们的应用程序的用户(3月12日之前),我们没有看到上述问题。
我无法找到有关上述错误的任何信息。
答案 0 :(得分:0)
我现在面临同样的问题,我们之前没有收到过这个错误。 我找到了一种方法,可以在进行一些测试时使其工作,但还没有找到合适的解决方案。
步骤如下:
答案 1 :(得分:0)
快速解决方法:使用您遇到问题的帐户登录Microsoft graph-explorer。 Microsoft会在允许之后请求一些权限。没有错误Please retry With PUID
没有正确的方法来解决这个问题。 Azure团队应该尽快解决此问题
答案 2 :(得分:0)
也测试过,我可以确认它是完全可重复的。步骤是: