Snowflake ODBC刷新令牌未发出



我正在使用雪花ODBC连接进行连续的API调用。我的访问令牌将在10分钟内到期,并且可以使用下面的调用使用刷新令牌进行刷新。但90天后,我的刷新令牌过期了。但是这个API端点

curl -X POST -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" 
--user "<OAUTH_CLIENT_ID not encoded>:<OAUTH_CLIENT_SECRET>" 
--data-urlencode "grant_type=refresh_token" 
--data-urlencode "refresh_token=<refresh_token value>" 
--data-urlencode "redirect_uri=<OAUTH_REDIRECT_URI not encoded>" 
<https://mydomain.snowflakecomputing.com/oauth/token-request>

这个调用只在刷新令牌有效的情况下返回访问令牌。

返回400个错误请求,当刷新令牌过期时不发送新的访问和刷新令牌。

如何自动刷新refresh_token ?是否有可能或者我们应该重复登录过程,这是唯一的方法?

无法刷新refresh_token。一旦refresh_token过期,您将不得不启动整个OAuth授权代码流,这是基于OAuth 2.0 RFC的。

  1. 使用用户名/密码登录
  2. 获取授权码
  3. 使用上面步骤(2)中的授权码交换访问令牌和刷新令牌
  4. 当刷新令牌过期时,重复步骤(1)

Snowflake OAuth是基于OAuth 2.0的,你可以参考这里的RFC:https://datatracker.ietf.org/doc/html/rfc6749

相关内容

  • 没有找到相关文章

最新更新