Как реализовать Docusign в SPA, не требуя от конечных пользователей аутентификации с DocuSign - PullRequest
0 голосов
/ 19 февраля 2019

Я следую примеру React OAuth Implicit, показанному здесь: https://github.com/docusign/eg-02-react-implicit-grant, и я не понимаю, как конечный пользователь нашего React SPA может создать конверт для себя, не имея доступана наш пароль учетной записи администратора.

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

Однако в связанном примере конечному пользователю предлагаетсячерез пользовательский интерфейс Docusign, чтобы войти в нашу учетную запись администратора, чтобы продолжить использовать методы API Docusign.

Как мы можем избежать запроса конечного пользователя на вход?Или это невозможно при использовании модели неявного предоставления?

Заранее спасибо.

1 Ответ

0 голосов
/ 20 февраля 2019

Отличный вопрос.Существует множество вариантов использования приложений, интегрированных с DocuSign:

Вариант использования: подписывающее лицо использует ваше приложение

Подписчики не нуждаются в учетных записях DocuSign.Только отправитель запроса на подпись нуждается в учетной записи.

Вариант 1. Использование Powerform

Самый простой способ справиться с этим вариантом использования - использовать DocuSign PowerForm. PowerForm - это шаблон конверта DocuSign, который отправляется неявносистемой DocuSign.Затем подписывающее лицо может заполнить форму, указав свое имя и другие данные, а затем подписать документ (ы).

Вот видео , демонстрирующее решение Powerform.

Вы можете заполнить форму от имени подписавшего через параметры запроса.См. этот ТАК ответ.Интегрировать ваше приложение с PowerForm легко, но могут быть некоторые аспекты конверта, которые нельзя установить с помощью шаблона.См. эту статью , чтобы узнать, как установить URL-адрес, на который пользователь будет перенаправлен после завершения подписи.

Вариант 2. Создайте конверт самостоятельно, затем позвольте своему пользователю подписать его

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

Что-то вроде:

  1. Создайте пользователя в своей учетной записи DocuSign, например "HR@your_company.com"
  2. Настройте серверную часть (серверное приложение) для использования аутентификации DocuSign JWT для олицетворения" пользователя "HR@your_company.com."См. примеры кодов eg-01 , доступные на нескольких языках.
  3. Напишите свой SPA, чтобы создать сам конверт (после получения токена доступа из бэкэнда) или использовать частный APIпопросить серверную часть создать конверт.После того, как конверт создан, получите URL для Церемонии подписания.
  4. Ваш SPA теперь перенаправляет пользователя на церемонию подписания (не используйте iFrame).После того как пользователь подписался, он будет перенаправлен обратно в ваш SPA вместе с информацией о событии (которую он подписал).Примером этого является рабочий процесс Embedded Signing Ceremony (первый рабочий процесс) в средствах запуска примеров кода DocuSign серии eg-03.Вот пример Node.js .

Примечания.

  1. Не используйте iFrame, так как Церемония подписания требует весь экран.IFrame на 100% на самом деле не нужен, так как SPA может сохранять состояние в сеансе с помощью файлов cookie или локального хранилища.
  2. Вы можете настроить церемонию подписания DocuSign так, чтобы она проверяла связь с вашим сервером (ping AJAX), чтобы поддержать сеансслужить в качестве пульса и т. д.
  3. Если у вас есть SPA, создайте конверт, то вам нужно настроить шлюз CORS, чтобы SPA мог взаимодействовать с облаком DocuSign.Это подробно описано в реферате примера eg-02.
  4. Создание конверта для подписывающего лица, как описано выше, дает вам максимальный контроль над конвертом, включая потенциальное включение документов вложения, платежей и т. Д.

Сценарий использования: ваш сотрудник использует ваше приложение SPA

В этом случае ваш сотрудник может проходить аутентификацию с DocuSign через SPA, а затем с помощью DocuSign через SPA и API DocuSign что угодно.Например:

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

Это пример использованиядемонстрируется примером eg-02 React.

...