Код: Выделить всё
var scopes = new[] { "User.Read" };
var tenantId = "xxxx";
var clientId = "xxxx";
var clientSecret = "xxxx";
var token = "token_obtained_from_angular_app";
var onBehalfOfCredential = new OnBehalfOfCredential(tenantId, clientId, clientSecret, token);
var tokenRequestContext = new TokenRequestContext(scopes);
var token2 = onBehalfOfCredential.GetTokenAsync(tokenRequestContext, new CancellationToken()).Result.Token;
var graphClient = new GraphServiceClient(onBehalfOfCredential, scopes);
var user = await graphClient.Me.GetAsync();
'AADSTS50013: утверждение не прошло проверку подписи. [Причина — ключ был найден, но использование ключа для проверки подписи не удалось. Отпечаток ключа, используемый клиентом: «xxxx», Найден ключ «Начало = 08.02.2024 17:02:53, Конец = 02/». 08/2029 17:02:53'. Посетите портал Azure, Graph Explorer или напрямую используйте MS Graph, чтобы просмотреть настроенные ключи для идентификатора приложения '00000000-0000-0000-0000-000000000000'. Просмотрите документацию по адресу https://docs.microsoft.com/en-us/graph/deployments, чтобы определить соответствующую конечную точку службы и https://docs.microsoft.com/en-us/graph/ ... cation-get? view=graph-rest-1.0&tabs=http для создания URL-адреса запроса, например «https://graph.microsoft.com/beta/applic ... 0000000000»]. Идентификатор трассировки: xxxx Идентификатор корреляции: xxxx Временная метка: 2024-03-18 11:00:00Z'
Существует только одно приложение, созданное как одностраничное приложение (SPA):

PS: Используя тот же токен, если я вызываю Me API в Postman, он работает нормально, и я могу получить профиль, но с помощью GraphClient я не могу этого сделать. По сути, все, что я хочу сделать, это получить профиль пользователя из моего токена, сгенерированного в приложении Angular.
Что мне не хватает?
Подробнее здесь: https://stackoverflow.com/questions/781 ... -failed-th