Я хочу отправить запрос от контроллера приложения ASP.NET MVC, развернутого в Microsoft Azure Cloud Active Directory, и получить ответ от службы, которая все еще развернута в Microsoft Azure Cloud Active Directory.
Для этой цели я скачал пример, который вы можете увидеть здесь, и настроил его для себя. Подробный документ моих действий содержится по той же ссылке.
Когда я тестировал сервис и веб-приложения на своем портале Azure, я обнаружил сообщение об ошибке в заголовке:
Не удалось автоматически получить токен, так как в кэше не найдено ни одного токена. Метод вызова AcquireToken
Ошибка произошла в следующей части моего контроллера:
ClientCredential credential = new ClientCredential( clientId, appKey );
result = await authContext.AcquireTokenSilentAsync( todoListResourceId, credential, new UserIdentifier( userObjectID, UserIdentifierType.UniqueId ) );
clientId: идентификатор моего веб-приложения, установленного в Azure AD (например, c95d45dd-ba7f-41be-a995-1db604afff32).
appKey: скрытое значение ключа моего веб-приложения на портале.
todoListResourceId: идентификатор моего приложения API, установленного в Azure AD (например: 4cfebcb4-6f2e-4eeb-84f2-4220f65774ed).
userObjectID: значение, возвращенное из следующего фрагмента кода.
string userObjectID = ClaimsPrincipal.Current.FindFirst( "http://schemas.microsoft.com/identity/claims/objectidentifier" ).Value;
то есть значение для пользователя, который находится в сети в браузере. Как указано в документе по моей ссылке на GitHub, это значение не является моей учетной записью Microsoft, которую я использовал при входе в свой портал Azure, а значением для моего пользователя, которого я зарегистрировал в моем Azure Active Directory.
Обсуждалась тема, аналогичная этой теме, и на нее был дан ответ the-cache-call-method">здесь раньше, но этот ответ не решил мою проблему.
Я работаю уже несколько дней, но не получил ответа от GET, POST, PUT, DELETE< /strong> методы в службе. Продолжаю разбираться с ошибкой в названии. Я жду твоей помощи.