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

能否无需用户输入实现Autodesk 3-legged auth授权?

无需用户交互获取Autodesk 3-legged OAuth授权的可行方案

3-legged OAuth的核心是用户主动授权,因此完全零交互的场景仅适用于特定条件,但以下方案可满足自动化需求:

1. 基于刷新令牌的长期自动化(最推荐)

这是实现无交互自动化的标准方式:

  • 先手动执行一次你的现有代码,完成用户登录和授权,在获取token的接口响应中保存refresh_token(需确保授权时添加了offline_access scope,否则不会返回refresh token)
  • 后续自动化任务中,直接调用刷新token接口,用已保存的refresh token换取新的access token,无需再触发浏览器登录:
    public async Task<string> RefreshAccessToken(string refreshToken, string clientId, string clientSecret)
    {
        using var client = new HttpClient();
        var formContent = new FormUrlEncodedContent(new Dictionary<string, string>
        {
            ["grant_type"] = "refresh_token",
            ["client_id"] = clientId,
            ["client_secret"] = clientSecret,
            ["refresh_token"] = refreshToken
        });
    
        var response = await client.PostAsync(
            "https://developer.api.autodesk.com/authentication/v1/refreshtoken",
            formContent
        );
        response.EnsureSuccessStatusCode();
        
        var authResult = await response.Content.ReadFromJsonAsync<Dictionary<string, object>>();
        return authResult["access_token"].ToString();
    }
    
  • 注意:refresh token默认有效期为14天,每次刷新token时会返回新的refresh token,持续更新即可实现长期自动化。

2. 静默授权(仅限企业SSO环境)

如果你的应用面向使用Autodesk企业SSO的用户群体,可在授权请求中添加prompt=none参数实现无交互授权:

  • 修改授权URL:
    https://developer.api.autodesk.com/authentication/v1/authorize?response_type=code&client_id={client_id}&redirect_uri={redirecturl}&scope=data:create data:read data:write offline_access&prompt=none
    
  • 生效前提:用户已通过企业SSO登录Autodesk服务且会话未过期;若会话失效,接口会返回login_required错误,此时仍需用户手动登录。

3. 设备授权流(适用于无头服务器/无浏览器环境)

若代码运行环境无浏览器(如Linux服务器),可使用设备授权流:

  1. 调用设备授权接口获取用户验证链接和设备码
  2. 用户在任意设备的浏览器中打开链接,输入设备码完成授权
  3. 代码轮询token接口,直到获取到access token
  • 此方案仅需一次用户交互(在其他设备上完成),无需在代码运行环境中打开浏览器,适合服务器自动化场景。

关键提示

  • 若自动化任务仅操作Autodesk平台自身资源(而非特定用户的私有资源),建议直接使用2-legged OAuth(服务端到服务端授权),无需任何用户交互。
  • 严禁硬编码用户账号密码来绕过授权流程,这违反Autodesk服务条款且存在极高安全风险。

内容的提问来源于stack exchange,提问作者Tom Boudniatski

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 23:25:19