DocuSign JWT认证疑问:设置Token过期时长为何仅获1小时AccessToken?
DocuSign JWT认证无法生成超过1小时有效期的AccessToken
首先直接给你结论:你没办法通过DocuSign JWT认证直接获取超过1小时有效期的AccessToken——这是DocuSign平台的硬性规则,不管你把JWT的exp属性设成1天、1个月还是1年,返回的AccessToken都会固定是1小时有效期,沙箱和生产环境执行的是同一套规则,之前合作伙伴团队的信息可能存在误解或者混淆了其他认证方式的特性。
为什么会出现这种情况?
DocuSign官方规则里明确规定,JWT认证生成的AccessToken最长有效期就是1小时。你设置的exp字段其实是用来控制JWT本身的有效期(比如你可以把JWT设成1年内有效,只要在这个时间范围内用它去换取AccessToken,都能成功拿到1小时的令牌),但AccessToken的时长是平台强制锁定的,完全无法自定义。
那怎么实现长期系统访问?
如果你的集成需要维持长期的无人干预访问,正确的解决方案是利用刷新令牌(Refresh Token):
- 在发起用户授权请求的时候,一定要加上
offline_access这个权限范围。这样当你用JWT换取AccessToken时,除了1小时的AccessToken,还会得到一个长期有效的Refresh Token(通常有效期30天,到期前还能用它换取新的Refresh Token和AccessToken)。 - 后台服务可以定时检查AccessToken的有效期,快过期时用Refresh Token自动获取新的AccessToken,全程不需要用户再次授权,就能实现“长期有效”的访问效果。
关键注意点
- 务必确认你的授权流程里包含了
offline_access范围,否则根本拿不到Refresh Token。 - Refresh Token有效期长,风险也更高,一定要妥善存储,避免泄露——因为它可以直接用来获取新的AccessToken,相当于长期访问凭证。
我之前帮几个做DocuSign集成的客户处理过类似的问题,都是通过Refresh Token的方式解决了长期访问的需求,你可以试试这个方案。
内容的提问来源于stack exchange,提问作者Sharon Ben Asher
相关产品推荐
相关产品推荐

