You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core如何实现站内可自定义纯文本协议数字签名

ASP.NET Core 站内纯文本自定义签署实现方案

你现有已经完成Adobe eSign的基础集成,不需要重构现有代码,按以下路径调整即可实现纯文本协议站内高度自定义签署的需求:

核心思路

放弃原有静态PDF上传、默认Embed Widget嵌入的模式,把「协议内容展示、签署交互UI」全放在自有站点实现,仅把文档存证、签名合规校验的环节交给eSign API处理,既保留你已经跑通的eSign签名法律效力,又能实现100%的UI自定义。

分步实现

1. 后端动态生成eSign可识别的纯文本协议

不需要提前生成静态PDF文件,直接把你要展示的纯文本协议转成简单HTML格式,调用eSign临时文档接口上传即可:

  • 对纯文本做基础HTML排版,只保留分段、换行、必要的重点标注,不要加复杂样式,确保和前端展示的内容完全一致
  • 调用/transientDocuments接口上传HTML格式的临时协议,拿到临时文档ID
  • 参考代码片段:
// 纯文本协议转基础HTML,做XSS过滤避免注入
var safeContent = WebUtility.HtmlEncode(plainTextAgreement).Replace("\n", "<br/>");
var agreementHtml = $@"
<html><body style='font-size:14px;line-height:1.6;'>
<h4>服务协议</h4>
{safeContent}
<p>签署人:{CurrentUser.Name}</p>
<p>签署时间:{DateTime.Now:yyyy-MM-dd HH:mm:ss}</p>
</body></html>";
var fileBytes = Encoding.UTF8.GetBytes(agreementHtml);
var fileContent = new ByteArrayContent(fileBytes);
fileContent.Headers.ContentType = new MediaTypeHeaderValue("text/html");
var form = new MultipartFormDataContent();
form.Add(fileContent, "File", "agreement.html");
// 复用你现有封装好的eSign鉴权客户端发请求
var docRes = await eSignClient.PostAsync("/api/rest/v6/transientDocuments", form);
var transientDocId = JsonSerializer.Deserialize<DocCreateResponse>(await docRes.Content.ReadAsStringAsync()).TransientDocumentId;

2. 自定义站内签署交互(完全不用Adobe默认UI)

这部分完全不用受eSign Widget的样式限制,按你自己的UI需求开发即可:

  • 前端直接渲染纯文本协议内容,和你现有页面的展示逻辑保持一致
  • 协议底部放自定义签署区:可以做手写签名画布、同意勾选框、身份验证码输入、签名确认按钮,样式完全适配你现有网站设计
  • 后端创建eSign协议时,指定签署模式为嵌入式签署,回调地址填你自己站内的签署完成页,不要用Adobe默认跳转页
  • 不需要iframe嵌入Adobe的签署页面,所有签署交互都在你自己的页面完成

3. 签署完成后的存证与校验

用户在你自定义的签署区完成操作提交后,按以下逻辑处理:

  • 后端先校验用户身份、签署操作的合法性(比如验证码是否正确、是否勾选同意协议、签名数据是否为空)
  • 把用户提交的签名数据(手写签名图片base64、签署时间、IP/设备信息、协议内容快照)和之前拿到的临时文档ID绑定,调用eSign的签署提交接口,完成eSign侧的协议状态更新,拿到官方的签名存证哈希、存证ID
  • 本地数据库存储协议原文快照、用户签名数据、eSign存证ID与哈希值,后续需要验签时直接拿哈希到eSign侧校验即可,和PDF签署具备同等法律效力

可选简化方案

如果你的简易协议没有强合规存证要求,甚至可以完全不调用eSign的签署接口:

  • 后端对展示给用户的纯文本协议内容+用户ID+签署时间戳生成哈希值
  • 用户提交签署操作后,把协议内容、签名数据、哈希值存在本地数据库即可
  • 后续出现纠纷时,用哈希校验协议内容是否被篡改,这种方案开发成本最低,自定义程度最高

现有网页UI参考截图

内容的提问来源于stack exchange,提问作者Rasitha Ariyarathna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 08:12:31