Иногда вам нужно знать ответ, чтобы задать правильный вопрос, поэтому я не уверен, является ли заголовок этого запроса идеальным.Как бы там ни было.
Я разработал приложение-функцию Azure (на основе триггера времени) для подключения к Dynamics 365 в режиме онлайн и выполняю некоторую работу.Все хорошо!Поскольку это был POC, и я хотел посмотреть, что было возможно, я написал следующий код:
IServiceManagement<IOrganizationService> orgServiceManagement;
orgServiceManagement = ServiceConfigurationFactory.CreateManagement<IOrganizationService>(new Uri(System.Environment.GetEnvironmentVariable("OrganizationService")));
AuthenticationCredentials authCredentials = new AuthenticationCredentials();
authCredentials.ClientCredentials.UserName.UserName = "[Non-interactive CRM Username here]";
authCredentials.ClientCredentials.UserName.Password = "[Password here]";
AuthenticationCredentials tokenCredentials;
tokenCredentials = orgServiceManagement.Authenticate(authCredentials);
OrganizationServiceProxy organizationProxy = new OrganizationServiceProxy(orgServiceManagement, tokenCredentials.SecurityTokenResponse);
Мой вопрос ... очевидно, теперь, когда POC работает, я хочу найти способ аутентифицировать функциюПриложите приложение к Azure AD (вместо передачи учетных данных в коде) и получите токен доступа, который я могу использовать для создания моего OrganisationServiceProxy, но как мне поступить?Я не могу найти прямой ответ там.Множество ответов в архитектурном стиле находятся в облаках.Мне нужны ответы в стиле разработчика (сделайте это, затем сделайте это):)
Я уверен, что многие новички в Azure найдут эту информацию полезной.Заранее спасибо.
Примечание для редакторов: этот вопрос отличается от Аутентификация с помощью Dynamics 365 из функции Azure , так как я нахожусь в том же клиенте и подписке, используя временные триггерыа не веб-хуки.Мое функциональное приложение просыпается, подключается к CRM, выполняет некоторые вычисления, обновляет CRM и возвращается в спящий режим.