Аутентификация единого входа DocuSign с использованием SAML / AD

#docusignapi

#docusignapi

Вопрос:

В нашем приложении мы предоставляем интеграцию DocuSign, которая использует клиент C # DocuSign.eSign.dll от DocuSign.

В настоящее время мы используем Legacy Header Authentication для аутентификации.

Один из наших клиентов хотел бы включить единый вход с помощью Azure Active Directory . Они уже настроили свою учетную запись, как описано в руководстве: Интеграция Azure Active Directory с DocuSign (для приложения DocuSign).

Как нам изменить нашу интеграцию, чтобы разрешить единый вход с использованием SAML? Какие методы API мы используем? Поддерживает ли это клиент DocuSign C #?

Ответ №1:

Устаревший заголовок не поддерживает аутентификацию единого входа. Для работы устаревшего заголовка у пользователей должен быть пароль.

Вам нужно будет либо предоставить исключение политики входа (чтобы позволить им обходить единый вход) каждому пользователю, которому необходимо пройти аутентификацию через API, либо вам нужно будет реализовать аутентификацию по токену OAuth.

Пример аутентификации по токену OAuth в C # доступен на GitHub: https://github.com/docusign/eg-03-csharp-auth-code-grant-core

Комментарии:

1. Спасибо, Дрю. Как нам заставить OAuth token authentication работать с текущей настройкой клиента (т.Е. вторая ссылка в вопросе — learn.microsoft.com/en-us/azure/active-directory/saas-apps /… )?

2. После того, как вы внедрили OAuth, не требуется дополнительной работы для обеспечения совместимости с Active Directory или любым другим поставщиком единого входа. В этом случае сервер учетной записи DocuSign сам обрабатывает фактическое событие входа в систему.

Ответ №2:

После того, как ваш клиент внедрил единый вход и включил обязательный единый вход в своей конфигурации DocuSign, вам следует использовать OAUTH либо с помощью предоставления кода авторизации-пользовательское приложение, либо с помощью предоставления веб-токена JSON-системная интеграция, чтобы сгенерировать accessToken для пользователя вашего клиентского API. Предоставление веб-токена JSON обычно используется, когда происходит системная интеграция в вашей интеграции с DocuSign. В любом случае вам необходимо попросить пользователя клиентского API предоставить согласие пользователя на ваш IntegratorKey, чтобы ваш IntegratorKey мог генерировать accessToken от имени пользователя клиентского API. Получение согласия объясняет, как получить согласие пользователя на User Application или System Integration . Предоставляя согласие вашему интегратору, Клиенты будут входить в DocuSign через свои настройки единого входа таким же образом, как они входят в DocuSign для доступа к DocuSign WebApp.

Комментарии:

1. Обновил мой ответ

2. Спасибо за ваши комментарии. @Amit: Существует ли простой одностраничный способ javascript для вызова API Docusign? Аналогично библиотекам MSAL от Microsoft? Я хочу упростить свое приложение без большой реализации на C #.