У меня есть Node.js API, который аутентифицируется с использованием стратегии OIDC passport-azure-ad.
После аутентификации пользователя я получаю профиль пользователя, access_token, refresh_token, sub и ISS.
Затем я использую тот же access_token, чтобы получить детали пользователя из графика Microsoft с использованием этого API - https://graph.microsoft.com/v1.0/me
Когда я запрашиваю, он выдает мне эту ошибку,
{
"error": {
"code": "InvalidAuthenticationToken",
"message": "Access token validation failure.",
"innerError": {
"request-id": "04048b3a-7636-4197-88ef-1f08d3a07c9e",
"date": "2018-12-26T09:40:58"
}
}
}
Когда яиспользуйте OAuth 2.0 и получите access_token и используйте этот access_token для доступа к тому же API, детали возвращаются успешно.
Хотя даже я пытался сопоставить access_tokens, возвращенные Open ID connect и OAuth 2.0, они различаются, несмотря на вход в системукак тот же пользователь.
Я не понимаю, почему access_token, возвращенный соединением Open ID, не работал.