【发布时间】:2019-11-07 15:12:16
【问题描述】:
Acumatica 版本:2019R1
我希望使用 Acumatica 中的连接应用程序修改授予的 OAuth 令牌的到期时间。目前,我的令牌是使用 'api' 和 'offline_access' 范围授予的,以便能够访问 API 并获取刷新令牌。
我试图避免使用任何类型的基于会话/cookie 的身份验证,因为我的系统将仅与来自完整外部源的 Acumatica REST API 交互,并且无法存储任何会话/cookie 相关数据。
我的最终目标是允许我的应用程序使用特定令牌进行绝对并发访问,而无需刷新,但更长的到期时间很可能就足够了。
作为背景,我查看了所有帮助文档,并通过了每个 Acumatica 开发人员培训课程,但没有一个明确说明 OAuth 协议是否可编辑。
我查看了https://www.rfc-editor.org/rfc/rfc6749 的 OAuth 2.0 框架文档,但是虽然它表明可以修改令牌到期时间/完全删除到期时间,但它没有关于如何修改它的具体信息,因为Acumatica 实现了该框架。
这是发送给初始令牌的 x-www-form-urlencoded 请求正文:
grant_type: <password>
client_id: <applicationID>@<company>
client_secret: <secret>
username: <username>
password: <password>
scope: api offline_access
这是从初始令牌请求以及每个刷新令牌的请求收到的响应:
{
"access_token": "<accesstoken>",
"expires_in": 3600,
"token_type": "Bearer",
"refresh_token": "<refreshtoken>"
}
【问题讨论】: