Microsoft Exchange API в вашем Java-коде

Ана Нето Новости компании, Разъемы, Технический Оставить комментарий

Ваш Java-код должен отправлять почту, используя Microsoft Exchange Server. Или вам нужно прочитать электронную почту с сервера Microsoft Exchange с помощью Java. Или, может быть, это календари, которые вас интересуют, и вы пытаетесь получить оттуда информацию или пытаетесь синхронизировать различные календари? Как вы работаете с Microsoft Exchange Calendar API на Java?

Классическим способом интеграции с любым типом программного обеспечения было бы использование его API. Итак, если вы пытаетесь интегрироваться с Microsoft Exchange, вы, вероятно, пытаетесь найти способ использования API Exchange.

API меняются со временем - немного истории Microsoft Exchange API

Наиболее распространенным способом интеграции с Java на Exchange раньше были веб-службы Exchange (EWS). Пакет EWS SDK для языка Java был выпущен как часть Microsoft Exchange 2007. Это API, основанный на SOAP, но дело в том, что в июле 2018 года компания Microsoft объявила, что больше не будет делать никаких обновлений функций. В то время как EWS SDK для системы Java будет продолжать получать обновления безопасности в течение некоторого времени, в настоящее время нет смысла начинать проект с его использованием.

Еще одним важным изменением является то, что с 13 октября 2020 года полностью прекратится поддержка базовой аутентификации в веб-службах Exchange (EWS). Microsoft хочет, чтобы все перешло на OAuth. На самом деле, OAuth - это гораздо лучший вариант, и он даже утвержден в качестве Международного Стандарта (ISO/IEC). Если вы не слышали о OAuth, вы можете проверить. здесь а затем углубиться здесь. И хотя это шаг к лучшему, факт в том, что когда поддержка базовой аутентификации закончится, приложения больше не смогут использовать базовую аутентификацию при подключении к Exchange с помощью EWS.

И что теперь?

Если вы хотите подключиться к Microsoft Exchange через API с Java и хотите следовать рекомендациям Microsoft, вам следует использовать Microsoft Graph.

Microsoft Graph был построен еще в 2015 году на базе Office 365, и он делегирует звонки в различные облачные сервисы Office 365 через одну конечную точку, таким образом.https://graph.microsoft.com/. Со временем она эволюционировала и теперь включает в себя доступ к другим продуктам Microsoft, таким как Exchange.

Внутри Microsoft Graph можно использовать Microsoft Graph API или подключение данных Microsoft Graph. В любом случае, убедитесь, что вы сначала проверили Условия использования. Компания Microsoft довольно специфична в отношении того, что можно и чего нельзя делать с их API, так что посмотрите.

В большинстве случаев, Microsoft Graph API - это путь к успеху. Немного подробнее об этом мы поговорим ниже.

Следует учитывать подключение данных Microsoft Graph, если вам нужно обрабатывать большие данные или если вам нужно детальное согласие (клиент получит возможность просматривать определенные поля и любые исключения, которые невозможны при использовании обычного API). Но есть важное правило, о котором вам следует знать, если вы рассматриваете возможность подключения данных Microsoft Graph: он будет отправлять данные только от арендатора Office 365 клиента соответствующему арендатору Azure.

Давайте вернемся к обычному API, так как это наиболее распространенный вариант. На данный момент существует 2 версии Microsoft Graph REST API - beta и v1.0.Таким образом, вы можете взглянуть на бета-версияно, конечно, для любого серьезного развития следует придерживаться производственной версии 1.0. Для этой версии вы можете проверить документация и Java SDK. Да, если вы только начинаете работать с этим API, то в этом деле есть много занятий!....

Чтобы затем использовать API, вам сначала нужно зарегистрировать ваше приложение. Я знаю, что это не самый захватывающий первый шаг, но если вы используете API напрямую, вам понадобится Application ID, чтобы представить ваше приложение в вызовах API. Для этого вам понадобится учетная запись для работы/школы или учетная запись Microsoft, а затем вы можете выбирать между регистрацией и использованием:

- портал регистрации приложений Майкрософт

- портал управления Azure Active Directory (рекомендуется для приложений корпоративного класса).

Если ваше приложение является конфиденциальным клиентом (услугой), вы должны создать новый пароль приложения, чтобы обезопасить его. После регистрации для вашего приложения будет создан идентификатор приложения, который будет отображен на странице свойств нового приложения.

Наконец, обратите внимание, что Microsoft Graph также постоянно меняется. Чтобы получить представление об изменениях с течением времени (с декабря 2015 года), вы можете взглянуть на журнал изменений. Если вы хотите работать с ним, мы рекомендуем всегда проверять, какая у вас текущая производственная версия API.

Есть способ получше?

Если тебе не очень нравится:

- Работать с Microsoft в первую очередь

- Приходится тратить тонны времени на изучение документации

- Приходится мириться с ошибками, вызванными будущими изменениями в Microsoft Graph API

Вам может быть интересно, есть ли какая-нибудь альтернатива. Да, есть способ получше!

Вместо того, чтобы напрямую использовать API, вы можете поместить тонкий слой между вами и API. Мы называем этот слой Connect Bridge. Этот слой был создан достаточно тонким, чтобы иметь все быстро и эффективно, но достаточно толстым, чтобы вы никогда не прикасались к Microsoft Exchange или даже к Microsoft Graph API.

Connect Bridge является платным инструментом, но вы можете проверить Connect Bridge бесплатная пробная версия чтобы вы могли посмотреть, работает ли она для вас. Прелесть этого инструмента в том, что он обеспечивает прямую и обратную совместимость.

Вы создаёте свой Java код, интегрирующийся с Connect Bridge, а затем ваши пользователи могут обновить Exchange, Microsoft может запустить новые версии API... и вам не придётся беспокоиться об этом. Неважно, что будет после Microsoft Graph API v1.0. Ваше решение все равно будет работать! Вы пишете свой код один раз и тогда вся сложность - это то, о чем вам просто не придется беспокоиться.

Нет никаких ограничений на среду, в которой вы можете использовать этот инструмент. Вы можете запустить его на

- Платформа SaaS, построенная компанией Azure, управляемая программным обеспечением Connecting.

- На территории или на собственных облачных серверах или виртуальных машинах (самохостинг)

Как работает 1ТП16Т? Что он делает за кулисами? В основном он транслирует стандартные SQL-запросы в вызовы API. На вашем коде это выглядит так, как будто вы получаете доступ к реляционной базе данных с помощью JDBC (ODBC и веб-службы также поддерживаются). Вы пишете заявления SELECT, INSERT, UPDATE и DELETE. Вы используете то, что выглядит как хранимые процедуры. Но это все лишь уровень абстракции.

Вы не имеете доступа к базе данных Microsoft Exchange (и поверьте мне, вы не хотите этого делать!). Но это выглядит так, как будто это так. Connect Bridge поставляется с утилитой запросов, с помощью которой вы можете тестировать свои (поддельные) запросы, просматривать (поддельные) таблицы с их (поддельными) столбцами или даже находить удобную (поддельную) хранимую процедуру. Как я уже говорил, все выглядит так, как будто используется база данных SQL, но это всего лишь абстракция.

После того, как вы сделали все необходимое тестирование, вы просто помещаете соединение и запросы в свой код, как если бы вы использовали JDBC для подключения к базе данных... и все! Теперь у вас есть работающее решение, которое не требует обслуживания. Все усилия по обслуживанию лежат на стороне Connect Bridge. Вот почему этот инструмент является платным. Я думаю, что это очень умная идея... стоит каждого пенни!

Также приятно отметить, что этот инструмент работает с безопасностью и аутентификацией, что может занять значительное количество времени, если вы развиваетесь с нуля.

Заключение

Мы видели, как можно легко получить доступ к данным Microsoft Exchange на Java с помощью интеграционной платформы Connect Bridge.

И есть еще хорошие новости: это также возможно с Microsoft Dynamics и Microsoft SharePoint! На самом деле, вы можете подключиться к любому программному обеспечению Microsoft, к Salesforce, и ко многим другим. Достаточно лишь получить Connect Bridge, который является базовой интеграционной платформой и подобрать подходящий коннектор.

Если вы хотите знать, какие коннекторы в настоящее время доступны на Connect Bridge, то вам следует обратить внимание на следующее https://www.connecting-software.com/connect-bridge-connectors/

Если вы хотите знать, какие новейшие коннекторы в этой обширной коллекции, посмотрите на Connect Bridges's 1ТП21Т Финансы и операции и 1ТП21Т Бизнес-центр Соединители.

Также важно знать, что существуют готовые продукты, которые используют Connect Bridge и которые являются полностью готовыми решениями. Например, CB Exchange Server Sync позволяет выбрать пользовательскую одностороннюю или двустороннюю синхронизацию календарей, папок электронной почты, заданий, контактов, общих папок без кодирования вообще.

Надеемся, что эта статья была вам полезна! Вот еще несколько постов в нашем блоге, в которых мы обсуждаем другие возможности интеграции:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *