Я выполнил это пошаговое руководство по созданию многопользовательского веб-приложения, которое может подключаться к Dynamics 365 CE Online. Пошаговое руководство: мультитенантная межсерверная аутентификация .
Когда я впервые запустил приложение и попытался войти в Dynamics CRM, оно попросило меня дать согласие, которое я принял.И затем он вернул следующую ошибку:
Microsoft.IdentityModel.Clients.ActiveDirectory.AdalServiceException HResult = 0x80131500 Сообщение = AADSTS65001: Пользователь или администратор не дал согласие на использование приложения с идентификатором «XXX» с именем «MvcCrmStsWalkthrough».Отправьте интерактивный запрос авторизации для этого пользователя и ресурса.
Для последующих попыток он не запрашивал согласия.Однако продолжал возвращать вышеупомянутую ошибку.
Что я использовал для этого POC
- Онлайн-версия Dynamics CRM
- Служба Azure Active Directory, которая была включена по умолчанию спробной версии CRM и было достаточно для регистрации приложения в Azure AD
- выпуск сообщества Visual Studio 2017
Что я пробовал до сих пор
- В AzureAD Я уже предоставил разрешение с помощью кнопки «Предоставить разрешение» в зарегистрированном приложении. Параметры> Требуемые разрешения (похоже, принятие согласия пользователя через мое настраиваемое приложение делает то же самое)
- Установка для oauth2AllowImplicitFlow значения true в манифесте приложения Azure AD
- Я проверил, что учетная запись O365, которую я использую для входа в приложение, имеет роль каталога глобального администратора в AD
Пример кода
Точно так жекак упомянуто в пошаговом руководстве