Adobe Sign API密码保护不生效,请求排查字段配置问题
Adobe Sign 密码保护配置错误分析及修正
你的问题核心是混淆了API不同层级的字段名,同时冗余字段导致API解析异常,具体问题和修正方案如下:
1. 字段名的层级差异(关键错误)
Adobe Sign V6 API的字段名有明确的层级区分:
- 全局协议层级:控制整个文档打开权限的字段是
securityOptions(复数),对应你提到的第二篇文档说明。 - 签署人层级(
memberInfos内):控制单个签署人访问其签署链接的字段是securityOption(单数),这和全局的文档打开密码不是同一个概念。
你同时在两个层级都加了单数和复数字段,会导致API无法正确识别有效的配置,直接忽略了密码设置。
2. 两种密码场景的正确配置
根据你的需求选择对应配置,不要混合冗余字段:
场景A:整个协议文档需要密码才能打开
只保留全局的securityOptions字段,删除所有securityOption(单数)字段:
{ "signatureType":"ESIGN", "state":"IN_PROCESS", "participantSetsInfo":[ { "order":1, "role":"SIGNER", "memberInfos":[ { "email":"xxx@xxx.xxx" } ] } ], "signatureFlow":"SENDER_SIGNATURE_NOT_REQUIRED", "fileInfos":[ { "transientDocumentId":"XXXXXXXXXX" } ], "name":"Passworded Agreement", "securityOptions":{ "openPassword":"XXXXXXXXXX", "protectOpen":true } }
场景B:仅针对该签署人设置其签署链接的访问密码
只保留memberInfos内的securityOption字段,删除全局的securityOptions字段:
{ "signatureType":"ESIGN", "state":"IN_PROCESS", "participantSetsInfo":[ { "order":1, "role":"SIGNER", "memberInfos":[ { "email":"xxx@xxx.xxx", "securityOption":{ "openPassword":"XXXXXXXXXX", "protectOpen":true } } ] } ], "signatureFlow":"SENDER_SIGNATURE_NOT_REQUIRED", "fileInfos":[ { "transientDocumentId":"XXXXXXXXXX" } ], "name":"Passworded Agreement" }
3. 额外注意事项
- 确保使用的是V6 API的端点,不同版本的字段名可能有差异;
protectOpen字段设置为true是必须的,它明确启用打开密码保护;- 测试时建议先使用简单密码,排除特殊字符导致的解析问题。
内容的提问来源于stack exchange,提问作者Devin Rodriguez
相关产品推荐
相关产品推荐

