top of page
Search

Интеграция электронной подписи в SharePoint

  • Writer: Sarov+
    Sarov+
  • 2 days ago
  • 2 min read

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

 

А узнать больше можно в нашем видео:

 

Почему стандартные решения не всегда работают?

 

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

 

Архитектура решения: Трехзвенная модель

 

Для реализации проекта мы выбрали «трехзвездную» архитектуру, которая обеспечивает разделение ответственности и безопасность данных:

  • Frontend (UI): Расширение SPFX Extension, которое интегрируется непосредственно в интерфейс SharePoint.

  • Backend: Azure Functions, выступающие в роли посредника и логического центра.

  • Сервис подписи: BoldSign API, отвечающий за юридически значимую сторону процесса.

Взаимодействие происходит следующим образом: расширение отправляет JSON-запрос в Azure-функцию, которая обрабатывает документ и через HTTP Request передает его в BoldSign.

 

Разработка интерфейса через SPFX Extension

 

Для расширения интерфейса SharePoint мы использовали фреймворк SPFX (SharePoint Framework). Это позволило создать клиентское приложение на TypeScript с использованием React.

 

Особенности реализации:

  • ListViewCommandSet: Мы добавили кастомную кнопку на ребон (панель инструментов) SharePoint. При нажатии открывается саб-панель с формой на React.

  • Гибкая валидация: В отличие от стандартных инструментов, здесь мы реализовали проверку email по RegEx. Это позволяет отправлять документы на подпись любым внешним пользователям, а не только тем, кто зарегистрирован в системе клиента.

  • Нюансы среды: Разработка требует строгого соблюдения версий Node.js. Поскольку требования Microsoft к версиям специфичны, разработчикам приходится использовать инструменты для быстрого переключения версий Node на рабочей машине.

 

Серверная логика на Azure Functions

 

Azure Functions стали идеальным выбором для бэкенда. Функция принимает запрос, скачивает документ из SharePoint, подготавливает его и отправляет в BoldSign.

 

Безопасность и авторизация:

 

Для работы с файлами и авторизации в системе мы используем Managed Identity. Это избавляет от необходимости хранить пароли в коде и обеспечивает безопасный доступ к ресурсам Azure и SharePoint.

 

Работа с документами:

 

После того как пользователь подписывает документ в интерфейсе BoldSign, Azure-функция сохраняет подписанный файл в ту же библиотеку SharePoint, где находился оригинал. К названию файла автоматически добавляется суффикс _signed, а в конец документа прикрепляется сгенерированная страница с логотипом заказчика и данными о подписи.

 

Почему Azure Functions, а не Power Automate?

 

При проектировании мы рассматривали использование Power Automate Flow, что также является жизнеспособным вариантом. Однако выбор пал на Azure Functions по нескольким причинам:

  • Оптимизация затрат: У клиента уже был план Elastic Premium в Azure с другими функциями. Добавление новой интеграции в существующий план не повлекло за собой дополнительных расходов.

  • Сложные манипуляции с PDF: В Power Automate сложно добавить страницу в PDF без использования платных сторонних коннекторов. В Azure-функции этот процесс реализуется прозрачнее и надежнее.

  • Контроль: Код функции дает больше гибкости в логировании и обработке специфических ошибок.

 

Заключение

 

Интеграция SharePoint с BoldSign через SPFX и Azure Functions позволила создать инструмент, который полностью адаптирован под бизнес-процессы заказчика. Мы получили систему с удобным интерфейсом, строгой валидацией и автоматизированной обработкой документов. Использование Azure Functions позволило не только сэкономить бюджет за счет имеющихся мощностей, но и обеспечить высокую скорость работы даже с объемными документами (более 100 страниц).

 
 
 

Comments


Power Platform logo

Подписывайся на наши ресурсы.

  • Telegram
  • LinkedIn
  • Facebook
  • Twitter
  • YouTube
  • Instagram

© 2035 by The Pop Show. Powered and secured by Wix

bottom of page