gpt4 book ai didi

oauth - 如何在 SPA 中实现 Docusign 而无需最终用户使用 DocuSign 进行身份验证

转载 作者:行者123 更新时间:2023-12-04 17:40:27 26 4
gpt4 key购买 nike

我正在关注此处显示的 React OAuth 隐式示例:https://github.com/docusign/eg-02-react-implicit-grant我很困惑,我们的 React SPA 的最终用户应该如何在没有访问我们的管理员帐户密码的情况下为自己创建一个信封。

作为我们应用程序注册流程的一部分,我们让最终用户填写一张表格,该表格预填了一个信封,供他们通过 Docusign 签名。我们想象我们的 Docusign 管理员帐户会在幕后代表这些用户验证我们的应用程序,让他们能够立即进入嵌入式签名仪式。

但是,在链接示例中,系统会通过 Docusign UI 提示最终用户登录我们的管理员帐户,以便继续使用 Docusign 的 API 方法。

我们如何避免要求最终用户登录?或者这在使用隐式授权模型时是不可能的吗?

提前致谢。

最佳答案

好问题。 DocuSign 集成应用程序有很多用例:

用例:签名者正在使用您的应用

签名者不需要 DocuSign 帐户。只有签名请求的发送者需要一个帐户。

选项 1:使用 Powerform

处理此用例的最简单方法是使用 DocuSign PowerForm. PowerForm 是 DocuSign 系统隐式发送的 DocuSign 信封模板。然后,签名者可以使用他们的姓名和其他详细信息填写表格,然后签署文档。

这是一个 video演示了 Powerform 解决方案。

您可以通过查询参数代表签名者填写表格。参见 this所以回答。将您的应用程序与 PowerForm 集成很容易,但可能无法通过模板设置信封的某些方面。参见 this article有关如何设置用户在完成签名后将被重定向到的 URL 的详细信息。

选项 2:自己创建信封,然后让您的用户签名

一个更强大的选项是让您的应用自己创建信封。付费 DocuSign 用户需要访问 token 才能发送信封。我不会使用系统管理员帐户,只会使用普通的 DocuSign 帐户用户。

类似于:

  1. 在您的 DocuSign 帐户中创建一个用户,例如“HR@your_company.com”
  2. 设置后端(服务器应用程序)以使用 DocuSign JWT 身份验证来模拟 HR@your_company.com“用户”。查看eg-01 series of code examples提供多种语言版本。
  3. 编写您的 SPA 以自行创建信封(在从后端获取访问 token 后)或使用私有(private) API 请求后端创建信封。创建信封后,获取签名仪式的URL。
  4. 您的 SPA 现在将用户重定向到签名仪式(不要使用 iFrame)。用户签名后,她将被重定向回您的 SPA 以及事件信息(她签名的)。这方面的一个例子是 DocuSign 代码示例启动器 eg-03 系列中的嵌入式签名仪式工作流程(第一个工作流程)。这是 Node.js example .

注释。

  1. 不要使用 iFrame,因为签名仪式需要整个屏幕。 100% 的 iFrame 并不是真正需要的,因为 SPA 可以通过 cookie 或本地存储在 session 中保存状态。
  2. 您可以将 DocuSign Signing Ceremony 设置为对您的服务器执行 ping 操作(AJAX ping)以保持 session 事件、用作心跳等。
  3. 如果您让 SPA 创建信封,则需要设置 CORS 网关以使 SPA 能够与 DocuSign 云通信。这在 eg-02 示例的文章中有详细说明。
  4. 如上所述为签名者创建信封可让您最大限度地控制信封,包括可能包含的附件​​文件、付款等。

用例:您的员工正在使用您的 SPA 应用

在这种情况下,您的员工可以通过 SPA 使用 DocuSign 进行身份验证,然后通过 SPA 和 DocuSign API 使用 DocuSign 进行任何身份验证。例如:

  • 寄信封
  • 发送信封,然后让签名者(亲自)在信封上签名。例如,银行员工允许亲自签名者开立账户的银行应用程序。
  • 监控发送的信封
  • 随便

这是 eg-02 React 示例演示的用例。

关于oauth - 如何在 SPA 中实现 Docusign 而无需最终用户使用 DocuSign 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54757909/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com