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

Azure Data Factory中Xero刷新令牌自动更新方案咨询

Azure Data Factory中Xero连接器OAuth2.0令牌自动刷新配置方案

一、刷新令牌自动更新的核心思路

Xero的OAuth2.0刷新令牌默认30分钟过期,要实现自动更新,核心是借助Azure Key Vault存储凭据,配合Azure Logic Apps定期调用Xero API刷新令牌并更新密钥库中的值,让ADF的Xero链接服务始终能获取有效凭据。

二、详细配置步骤

1. 配置Azure Key Vault

  • 若没有Key Vault,先创建一个。然后在Key Vault的访问策略中,给ADF和后续要用的Logic App服务主体添加权限:授予Get(读取机密)和Set(更新机密)权限。
  • 在Key Vault中创建3个机密:
    • XeroClientID:存储Xero应用的客户端ID
    • XeroClientSecret:存储Xero应用的客户端密钥
    • XeroRefreshToken:存储初始通过OAuth流程获取的刷新令牌

2. 配置ADF的Xero链接服务

  • 打开ADF,创建或编辑Xero链接服务,选择OAuth 2.0认证方式。
  • 客户端ID、客户端密钥、刷新令牌这三个字段,全部选择从Azure Key Vault中获取,分别对应Key Vault里创建的三个机密。
  • 测试连接,确认能正常访问Xero数据。

3. 用Logic Apps实现令牌自动刷新

  • 创建一个Logic App,设置定期触发器,执行频率设为25分钟(比30分钟过期时间提前,避免令牌失效)。
  • 添加获取机密动作,从Key Vault中取出XeroClientID、XeroClientSecret、XeroRefreshToken三个值,保存为变量。
  • 添加HTTP动作,调用Xero的刷新令牌API:
    • 请求方法:POST
    • URL:https://identity.xero.com/connect/token
    • 请求头:Content-Type: application/x-www-form-urlencoded
    • 请求体(用变量填充):
      grant_type=refresh_token&client_id=[你的XeroClientID变量]&client_secret=[你的XeroClientSecret变量]&refresh_token=[你的XeroRefreshToken变量]
      
  • 添加设置机密动作,将HTTP响应返回的新refresh_token值,更新到Key Vault的XeroRefreshToken机密中。
  • 保存并启用Logic App,从此会自动定期刷新令牌。

4. 验证效果

  • 等待Logic App执行1-2次后,查看Key Vault中XeroRefreshToken的数值是否更新。
  • 运行ADF的数据提取管道,确认不会出现令牌过期的报错,连接持续有效。

三、访问令牌的配置说明

Xero的OAuth2.0流程中,访问令牌是由刷新令牌自动获取的——ADF的Xero连接器会在每次发起数据请求前,自动使用Key Vault中存储的有效刷新令牌,调用Xero API获取新的访问令牌,不需要手动配置或维护访问令牌。只要确保刷新令牌能被自动更新,ADF就能持续获取有效的访问令牌完成数据提取。

注意事项

  • 确保Xero应用的权限配置正确,允许使用刷新令牌获取新凭据。
  • Logic App的执行频率必须短于30分钟,避免出现令牌过期的间隙。
  • 定期检查Key Vault的访问策略,确保ADF和Logic App的服务主体权限正常。

内容的提问来源于stack exchange,提问作者Yoshitha P

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 12:17:56