Интеграция Outlook и SAP с Power Apps

Это решение обеспечивает интегрированный рабочий процесс между Microsoft Outlook и SAP Customer Relationship Management (SAP CRM), что позволяет пользователям работать гладко в обеих средах. Это избавляет от необходимости вручную повторно вводить в SAP данные о взаимоотношениях с клиентами и действия, предоставляя пошаговый контекстно-зависимый интерфейс непосредственно в панели чтения Outlook.

Совет

В этой статье приведен пример сценария и обобщенная архитектура, демонстрирующая расширение Outlook с помощью приложений на основе холста Power Apps, что позволяет пользователям работать с данными SAP без переключения приложений. Пример архитектуры можно модифицировать для различных сценариев и отраслей.

Диаграмма архитектуры

Схема, показывающая архитектуру надстройки Outlook, в которой встроенное в Outlook приложение холста Power Apps взаимодействует с SAP через Power Automate и коннекторы.

Workflow

  1. Пользователь открывает сообщение электронной почты в Outlook

    Внедренное приложение на основе холста загружает контекстные метаданные с помощью соединителей Microsoft Power Platform, таких как Office 365 Outlook и Пользователи Office 365.

  2. Приложение на основе холста извлекает данные электронной почты с помощью соединителей

    • Адреса отправителя и получателя
    • Тело сообщения электронной почты
    • Attachments
  3. Холстовое приложение выполняет запросы к SAP CRM/S/4HANA с помощью настраиваемого соединителя

    • Поиск записей бизнес-партнеров, включая клиентов и контактов
    • Возвращает структурированные данные SAP в пользовательский интерфейс
  4. Пользователь выбирает действия в надстройке Outlook

    • Создание действия SAP из электронной почты
    • Сохранение электронной почты и вложений в SAP CRM
    • Просмотр связанных записей SAP
    • Создание последующих задач
  5. Настраиваемый соединитель отправляет операции в службы SAP OData

    • Реализует проверку подлинности OAuth 2.0
    • Преобразует и проверяет полезную нагрузку
    • Записывает обратно сведения о действиях или извлекает данные партнёра
  6. Оркестрация в Dataverse и Power Automate (необязательное расширение)

    • Записывает и визуализирует журналы
    • Запускает автоматизацию рабочих процессов
    • Включает расширенные сценарии обработки

Компоненты

Это решение использует несколько компонентов для обеспечения простой интеграции между Outlook, Power Apps и SAP.

приложения Power Apps холста

Холстовые приложения Power Apps обеспечивают основной пользовательский интерфейс решения. Приложение встраивается непосредственно в область чтения в Outlook, используя поддерживаемую модель размещения Power Apps в Outlook. В ней представлены соответствующие сведения о бизнес-партнере SAP и информация о действиях, связанных с открытым в данный момент электронным письмом. Он поможет пользователям выполнять такие распространенные задачи, как создание действий, сохранение сообщений электронной почты и вложений и создание последующих задач.

Приложение предназначено для упрощенного, ориентированного на задачи взаимодействия. Он оптимизирован для быстрого и минимального переключения контекста. Он делегирует интеграцию и обработку логики внутренним слоям, чтобы обеспечить скорость реагирования и обслуживания пользовательского интерфейса. Приложение использует Office JavaScript API (Office.js) только для упрощенного переключение контекста из активного элемента Outlook в внедренное приложение Power App и не размещает пользовательский интерфейс или бизнес-логику.

Настраиваемые соединители

Настраиваемый соединитель Power Platform предоставляет уровень интеграции между надстройками Outlook и службами SAP OData. Он обрабатывает аутентификацию (OAuth2, делегированные разрешения), передает параметры, вызывает конечные точки API SAP и возвращает структурированные данные в приложение Canvas.

Коннектор позволяет решению выполнять следующие действия:

  • Получение сведений о бизнес-партнере SAP, связанных с отправителями электронной почты и получателями
  • Создание действий SAP из содержимого электронной почты
  • Хранение сообщений электронной почты и вложений в SAP
  • Создавайте последующие действия, связанные с записями SAP

SAP остается системой записи для данных клиента, контактов и действий. Поэтому любая интеграция должна соответствовать корпоративной модели безопасности SAP, требованиям к пробросу идентификационных данных и стандартам публикации API, одновременно поддерживая доступ на уровне отдельных пользователей и возможность полного аудита.

Оценка встроенного коннектора SAP

Оцените собственные соединители SAP в качестве начального варианта, так как они:

  • Предоставление более низких затрат на обслуживание и жизненный цикл
  • Следуйте стандартной модели управляемого соединителя
  • Предпочтительнее, если выполняются функциональные и архитектурные требования

Однако во время технической оценки собственные соединители SAP не соответствуют требованиям этой архитектуры, особенно в корпоративных ландшафтах SAP, где API предоставляются через SAP API Management в SAP Business Technology Platform (SAP BTP).

К указанным ограничениям относятся следующие:

  • Ограниченный контроль над специфическими для SAP заголовками HTTP, такими как обработка CSRF и условные заголовки
  • Недостаточная гибкость при работе с пользовательскими структурами данных SAP OData
  • Ограниченная совместимость с службами управления API SAP
  • Снижение возможности поддерживать модели делегированной аутентификации на уровне отдельных пользователей, соответствующие механизму распространения удостоверений SAP
  • Требует, чтобы конечные пользователи вводят сведения о технической конфигурации SAP при создании подключения, за которые пользователи обычно не знают и не должны отвечать за них. Параметры технического подключения SAP должны централизованно управляться и абстрагироваться от бизнес-пользователей.

Зачем использовать настраиваемый соединитель Power Platform

Используйте настраиваемый соединитель Power Platform, чтобы соответствовать приведенным выше требованиям и соответствовать шаблонам интеграции SAP предприятия.

Этот подход позволяет:

  • Бесшовная интеграция с SAP API Management в качестве официального периметра предприятия SAP
  • Полный контроль над структурами запросов и ответов, включая требования к протоколу SAP
  • Поддержка делегированной проверки подлинности для каждого пользователя (OAuth 2.0 с помощью управления API SAP)
  • Прогнозируемость поведения в средах SAP CRM и SAP S/4HANA
  • Предотвращение неподдерживаемого прямого подключения к локальным системам SAP

Настраиваемый соединитель интегрируется исключительно с управлением API SAP и никогда не напрямую с внутренними системами SAP.

Регулирование API SAP и управление трафиком

Регулирование API SAP, ограничение скорости и политики управления трафиком явно выходят из области доставки Power Platform.

Эти элементы управления:

  • Настроено в службе управления API SAP (SAP BTP)
  • Курируется и эксплуатируется внутренней командой платформы SAP

С точки зрения Power Platform управление API SAP рассматривается как управляемая служба HTTPS. Настраиваемый коннектор не реализует и не переопределяет механизм ограничения частоты запросов и учитывает ответы SAP API Management.

Границы подключения и ответственности SAP

Доступ к SAP CRM осуществляется исключительно через внешне опубликованные SAP API, управляемые с помощью SAP API Management (SAP BTP). Компоненты Power Platform не подключаются непосредственно к локальным системам SAP и не используют локальный шлюз данных. SAP API Management выступает в качестве обратного прокси-сервера, рубежа безопасности и уровня согласования протоколов, предоставляя доступ к сервисам SAP OData по HTTPS контролируемым, одобренным на уровне предприятия способом.

Сквозная топология подключения (зависимость корпоративного развертывания)

Хотя Power Platform подключается только к конечной точке HTTPS управления API SAP (SAP BTP), управление API SAP должно иметь безопасное подключение к локальной серверной части SAP.

Как правило, этот подход реализует команда клиента SAP Basis или инфраструктурная команда, используя стандартные сценарии подключения SAP, такие как SAP Cloud Connector и частные сетевые подключения, такие как VPN или пиринг.

Граница ответственности

Область действия Power Platform: обращается только к внешне опубликованной конечной точке SAP API Management по протоколу HTTPS. Power Platform не требует прямого туннелирования сети, конфигурации VPN или настройки частной конечной точки.

Зона ответственности клиента/SAP: определяет и регулирует маршрутизацию между BTP и локальной инфраструктурой, правила брандмауэра, сертификаты и сегментацию сети в соответствии с корпоративными политиками безопасности.

В этой эталонной архитектуре предполагается, что конечная точка API SAP утверждена предприятием, доступной из облачных служб Microsoft и защищена с помощью политик управления API SAP для проверки подлинности, авторизации, регулирования и аудита.

Компромиссы и владение жизненным циклом

  • Преимущества: Предсказуемое поведение интеграции, полный контроль над требованиями к протоколу SAP, включая заголовки, защиту от межсайтовой подделки запросов (CSRF) и тело запроса, а также четкое соответствие SAP API Management в роли границы корпоративного контура.

  • Компромиссы: Требует чёткого закрепления ответственности за управление версиями коннекторов, тестирование, мониторинг и управление изменениями, например по мере развития сервисов SAP OData.

SAP CRM

SAP CRM служит системой записи для клиентов, контактов и данных действий. Решение взаимодействует с SAP в основном через стандартизированные службы OData для выполнения поиска бизнес-партнеров, получения связанных записей и создания или обновления действий на основе действий пользователей в Outlook. Сохраняя основную бизнес-логику и владение данными в SAP, архитектура соответствует принципам планирования корпоративных ресурсов (ERP) и избегает ненужных дублирования данных в системах.

Соединители Power Platform

Используйте соединители Office 365 Outlook и Пользователи Office 365 для получения контекстной информации о открываемой в настоящее время электронной почты, включая сведения о отправителях и получателях, тексте электронной почты и вложениях. Приложение на основе холста использует эти данные для предварительного заполнения данных о действиях SAP и для прикрепления сообщений электронной почты и документов к записям SAP. Используйте эти данные строго для необходимых метаданных. Убедитесь, что весь доступ осуществляется через контекст личного подключения конкретного пользователя для поддержки безопасности и соответствия требованиям.

Microsoft Dataverse (необязательное расширение)

Введите Dataverse в качестве дополнительного уровня расширения для поддержки межкомпонентного управления, журналов и расширенных сценариев обработки. Он хранит операционные журналы, метаданные интеграции и временные данные, необходимые для расширенных рабочих процессов и аналитики. Dataverse также обеспечивает основу для будущих улучшений, включая отчеты, мониторинг и контролируемый доступ к данным, не влияя на основные системы SAP.

Power Automate (необязательное расширение)

Используйте Power Automate на последующих этапах для оркестрации асинхронных рабочих процессов, инициируемых событиями, связанными с Outlook или SAP. Типичные варианты использования включают фоновую обработку, уведомления, потоки эскалации или интеграцию с другими системами. Сохраняя автоматизацию необязательной и слабо связанной, архитектура поддерживает добавочное внедрение без добавления ненужных зависимостей среды выполнения в основной поток взаимодействия с пользователем.

Подробности сценария

Команды по продажам и службам часто работают в Outlook для взаимодействия с клиентами и SAP CRM/S/4HANA для операционных действий. Переключение между системами увеличивает усилия вручную и может привести к неполным или несогласованным данным. Это решение предоставляет единую рабочую область непосредственно в Outlook, помогая пользователям определять клиентов, сохранять сообщения электронной почты в SAP в качестве действий и создавать дальнейшие действия без переключения систем. Этот подход помогает уменьшить запись данных вручную и повысить полноту данных в процессах, стоящих перед клиентом.

Надстройка Outlook позволяет пользователям:

  • Определение бизнес-партнеров SAP, связанных с электронными письмами
  • Создание действий SAP из содержимого электронной почты
  • Хранение сообщений электронной почты и вложений в SAP
  • Создавайте последующие действия, связанные с записями SAP

Хотя аналогичные возможности существуют в некоторых собственных расширениях Microsoft, в настоящее время нет сравнимого решения, которое эффективно интегрирует локальный SAP CRM с расширением Outlook. Это решение заполняет этот пробел, предоставляя ключевые функции SAP CRM в Outlook таким образом, что интуитивно понятны для конечных пользователей и соответствует требованиям корпоративной интеграции.

Prerequisites

В этом решении используются пользовательские соединители Power Platform, для использования которых конечным пользователям требуется премиум-лицензия Power Apps. Каждый пользователь Outlook, использующий интеграцию SAP, должен иметь соответствующую лицензию.

Note

Собственные соединители SAP были оценены, но не выбраны из-за функциональных и архитектурных ограничений. Оцените потребности лицензирования на основе количества Outlook пользователей, которым требуется взаимодействие SAP, и проверьте требования к лицензированию во время планирования решения.

Considerations

Эти соображения реализуют основы Power Platform Well-Architected — набора руководящих принципов, повышающих качество рабочей нагрузки. Дополнительные сведения см. в разделе Microsoft Power Platform Well-Architected.

Reliability

Эта архитектура использует устойчивые шаблоны интеграции для обеспечения плавной работы решения даже в том случае, если зависимые системы медленно или временно недоступны. Настраиваемый соединитель использует логику повторных попыток и контролируемые тайм-ауты для вызовов SAP OData для обработки временных сбоев. Когда возникают проблемы, приложение на основе холста показывает ошибки в понятной и полезной форме и объясняет, что делать дальше. Проект также ограничивает запросы на то, что необходимо во время взаимодействия с пользователем, что снижает риск каскадных сбоев.

Security

Эта архитектура обеспечивает безопасность с помощью комплексного управления удостоверениями и доступом, согласованными с рекомендациями Power Platform. Он передает конфиденциальные данные, такие как метаданные электронной почты, вложения и записи клиентов, только через зашифрованные каналы без локального хранилища на пользовательских устройствах. Он реализует наименее привилегированный доступ как в SAP, так и в среде Power Platform. Все взаимодействие между Outlook, серверными службами Office 365, настраиваемым соединителем и SAP строится по принципу нулевого доверия, гарантируя проверку идентификации при каждом вызове.

Модель идентификации и проверки подлинности

Соединители Power Platform, использующие OAuth 2.0 с делегированными разрешениями для доступа к ресурсам Microsoft Graph. Они работают в контексте пользователя, вошедшего в систему Outlook. Доступ к SAP использует делегированную аутентификацию для каждого пользователя через SAP API Management. Поставщик удостоверений предприятия (IdP) обеспечивает федеративную проверку подлинности пользователей с помощью языка разметки утверждений о безопасности (SAML) 2.0. Полученное утверждение SAML обменивается на маркер доступа OAuth 2.0 (поток SAML Bearer Assertion). Управление API SAP использует этот маркер для вызова служб SAP OData при сохранении удостоверения конечного пользователя.

Каждый пользователь устанавливает собственное подключение Power Platform к пользовательскому соединителю при первом использовании. Архитектура не использует учетные записи службы общей среды выполнения для бизнес-операций.

Сопоставление идентификаторов и жизненный цикл пользователей

Чтобы обеспечить безопасный индивидуальный доступ к SAP для каждого пользователя, организациям необходим четкий подход к сопоставлению идентификаторов Microsoft с учетными записями SAP и управлению доступом в течение всего жизненного цикла пользователя.

  • Принцип отображения: В операциях SAP используются идентификационные данные конечного пользователя, передаваемые через SAP API Management. Стратегия идентификации клиента должна определить, как удостоверение Microsoft, например имя участника-пользователя Entra ID пользователя (UPN) или адрес электронной почты, сопоставляется с соответствующим субъектом SAP, например идентификатором пользователя SAP. Он также должен включать, где поддерживается это сопоставление, например в idP, SAP или в рамках процесса управления удостоверениями и доступом (IAM).

  • Предоставление и отзыв доступа: Стандартные корпоративные процессы приема, перевода и увольнения сотрудников обеспечивают предоставление и отзыв доступа к API SAP. Если пользователь отключен в поставщике корпоративных удостоверений или удален из ролей авторизации SAP, последующие вызовы соединителя завершаются сбоем (доступ запрещен).

  • Нет общих бизнес-учетных записей: Архитектура не использует учетные записи служб для бизнес-операций среды выполнения. Они могут существовать только для действий по настройке среды, развертыванию и настройке в контролируемых процессах DevOps.

  • Возможность аудита: Так как вызовы выполняются для каждого пользователя, журналы аудита SAP и журналы управления API могут атрибутировать действия инициатору, поддерживая разделение обязанностей и отчетов о соответствии требованиям.

Операционная эффективность

Эта архитектура соответствует операционным рекомендациям по поддержке обслуживания, наблюдаемости и плавному управлению жизненным циклом. Централизованное журналирование, например с помощью Dataverse или средств мониторинга, позволяет фиксировать вызовы соединителей, ошибки и характер использования, помогая администраторам выявлять проблемы на раннем этапе и оптимизировать производительность.

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

Эффективность работы

Производительность оптимизирована путем минимизации извлечения данных и выполнения только необходимых операций. Ограничьте запросы к SAP минимальным набором атрибутов бизнес-партнера, необходимых для сценария Outlook, что снижает нагрузку на конечные точки SAP OData. Оптимизируйте вызовы коннектора Power Platform, чтобы получать только необходимые метаданные электронной почты. Избегайте ресурсоемких преобразований в приложении на основе холста, передав их обработку пользовательскому соединителю. Такой подход приводит к более быстрой отрисовке пользовательского интерфейса и более гладкому пользовательскому интерфейсу.

Оптимизация взаимодействия

Отдавайте приоритет эффективности работы пользователей и непрерывности пользовательского потока. Внедрив интерфейс непосредственно в область чтения Outlook, вы сокращаете переключение контекста, чтобы пользователи могли быстрее выполнять задачи, связанные с SAP. Приложение на основе холста предоставляет предварительно заполненные формы, интуитивно понятную навигацию и мгновенный доступ к связанным записям SAP, что помогает сократить объём ручной работы и когнитивную нагрузку. Фокусируясь на наиболее распространенных действиях — создании действий, сохранении сообщений электронной почты и вложений в SAP и поиске клиентов— взаимодействие остается быстрым, предсказуемым и выровненным с учетом потребностей пользователей.

Другие вопросы

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

Управление жизненным циклом приложений (ALM)

В этой эталонной архитектуре предполагается использование стандартного Power Platform ALM, где встроенных конвейеров Power Platform достаточно для перемещения решений между средами с согласованиями и аудитом.

  • Обслуживание отдельных сред разработки, тестирования и рабочей среды.

  • Используйте решения для упаковки и транспорта:

    • Без управления на этапе разработки.
    • Управление в тестовой и рабочей среде.
  • Повышение уровня управляемых решений в разных средах с помощью конвейеров в Power Platform с контролируемыми утверждениями и журналом выполнения. Откат выполняется путем повторного развертывания заведомо исправной версии управляемого решения при необходимости.

  • Используйте переменные среды и ссылки на подключения для URL-адресов конечных точек и привязок соединителя (без жестко закодированных значений).

  • Храните секреты и сертификаты в утвержденном хранилище секретов, например Key Vault, и никогда не в формулах приложения или определениях соединителя.

  • Применение шлюзов качества решения, таких как средство проверки решений и статический анализ перед повышением производительности рабочей среды.

  • Дополнительные: Интеграция с внешними CI/CD (Azure DevOps или GitHub) только в том случае, если для вашей организации требуются расширенные рабочие нагрузки.

Observability

Минимальные базовые показатели наблюдаемости для поддержки предприятия включают:

  • Запись телеметрии интеграции для каждого вызова SAP, включая метку времени, имя операции, код состояния ответа, задержку и категорию причин сбоя. Включите идентификатор корреляции, чтобы отслеживать одно действие пользователя в Power Apps, соединителе, SAP API Management и SAP.

  • Централизация журналов в одобренном организацией хранилище, например в таблицах Dataverse или на внешней платформе мониторинга.

  • Определение пороговых значений оповещений, таких как повышенный уровень сбоя, устойчивая задержка и сбои проверки подлинности, а также обслуживание операционного модуля Runbook для реагирования на инциденты.

  • Обеспечение того, чтобы политики SAP API Management также генерировали журналы и поддерживали трассировку для диагностики проблем и соблюдения требований.

Мониторинг приложений

Решение использует Microsoft Application Insights для сбора телеметрии на уровне приложения из холстового приложения Power Apps. В надстройке Outlook предусмотрены настраиваемые трассировки и события для мониторинга поведения приложения, действий пользователей и ключевых пользовательских сценариев. Этот мониторинг обеспечивает видимость действий пользователей, использования функций, путей выполнения и ошибок на уровне приложения, поддерживая как устранение неполадок, так и непрерывное улучшение взаимодействия с пользователем.

Интеграция и мониторинг сети

Централизованная платформа SAP управляет мониторингом на уровне сети, анализом трафика и мониторингом производительности API для интеграции SAP с помощью управления API SAP. С точки зрения Power Platform рассматривайте SAP API Management как управляемую конечную точку HTTPS. Power Platform не реализует логику мониторинга или регулирования на уровне сети и использует управление API SAP, чтобы обеспечить управление трафиком, диагностику и журналы аудита для вызовов API SAP.

Защита от потери данных (DLP) и управление соединителями

Используйте Управляемые среды, политики данных и управление использованием соединителей, чтобы ограничить перемещение данных и обеспечить, чтобы были разрешены только утвержденные соединители, среды и правила обработки вложений.

  • Используйте управляемые среды: Развертывайте только в управляемые среды и управляйте средами разработки, тестирования и продуктивными средами с помощью групп сред (зон), чтобы правила были единообразными и не переопределялись локально.

  • Применение расширенных политик соединителей (предпочтительный): явным образом разрешать только необходимые соединители и ограничивать возможности высокого риска, включая уровни действий и параметры или элементы управления конечной точкой, где они доступны. Дополнительные сведения см. в разделе "Применение расширенных политик соединителя".

  • Базовые показатели классической политики данных: Классифицируйте соединители Office 365 и настраиваемый соединитель SAP для каждой политики, как правило, как бизнес, и блокируйте не утвержденные сочетания соединителей. Дополнительные сведения см. в разделе Управление политиками данных.

  • Защита вложений: Применение ограничений типа и размера файлов, сканирования, маркировки или классификации и требований к хранению, которые можно достичь с помощью стандартных возможностей безопасности Microsoft, таких как Microsoft Purview и Microsoft Defender.

Решения по проектированию и альтернативные варианты, рассмотренные

Локальное подключение SAP: Решение не использует прямое подключение от Power Platform к локальным системам SAP, например через локальный шлюз данных или туннелирование частной сети. Вместо этого вы получаете доступ к системам SAP исключительно через API SAP, опубликованные для внешнего доступа и предоставляемые через SAP API Management.

Интеграционный уровень: Команда рассмотрела такие шаблоны промежуточного ПО, как Azure API Management или Logic Apps. Они выбрали управление API SAP (SAP BTP) в качестве авторитетной границы интеграции, так как команда платформы SAP владеет и управляет ею. Она поддерживает встроенные механизмы безопасности SAP, распространение идентификационных данных и управление жизненным циклом.

Модель аутентификации: Решение исключает использование общих служебных учетных записей для бизнес-доступа во время выполнения. Она использует делегированную проверку подлинности для каждого пользователя, которая обеспечивает полную возможность аудита, разделение обязанностей и соответствие корпоративным политикам удостоверений.

Модель расширяемости Outlook: Решение использует поддерживаемую модель размещения приложения Power Apps на основе холста внутри Outlook вместо пользовательской надстройки области задач на Office.js. Office.js используется только для упрощенной передачи контекста, а бизнес-логика и пользовательский интерфейс реализованы в компонентах Power Platform.

Соавторы

Корпорация Майкрософт поддерживает эту статью. Следующие авторы написали эту статью.

Основные авторы: