Это так, но вы должны попросить об этом, установив
использовал Microsoft Graph API в своем угловом веб-приложении.
Сначала я делаю связь, используябиблиотека мсал Когда я пытаюсь войти с моим профилем, я получаю эту ошибку
Я настроил свое приложение как упомянутое в официальномобразец мерзавца
MsalModule.forRoot({
clientID: "Tenant ID",
authority: "https://login.microsoftonline.com/common/",
redirectUri: "http://localhost:4200/",
validateAuthority : true,
popUp: true
}),
Аутентификация работает, и я получаю токен.
Затем, когда я на домашней странице, я делаю второй запрос к Microsoft Graph API, чтобы получить информацию о пользователе с помощью этого токена.
getProfile() {
let header= new Headers();
let tokenid= sessionStorage.getItem('msal.idtoken');
header.set('Authorization', 'Bearer ' + tokenid)
let url ="https://graph.microsoft.com/v1.0/me/"
return this.http.get(url,{headers:header});
}
}
Я получаю 401 несанкционированную ошибку с ответом:
{
"error": {
"code": "InvalidAuthenticationToken",
"message": "Access token validation failure.",
"innerError": {
"request-id": "xxxxxx",
"date": "2018-10-09T22:58:41"
}
}
}
Я не знаю, почему MG API не принимает мой токен. Я использую неправильный URL-адрес авторизации?
ОБНОВИТЬЯ понял, что на самом деле я получаю id_token, который отличается от токена доступа. Как получить токен доступа из библиотеки MSAL для выполнения вызовов API MS GRAPH?