无法使用 OAuth 令牌从 Databricks 连接到 Snowflake "EXTERNAL_OAUTH_USER_CLAIM_MISSING"

Unable to use OAuth token to connect to Snowflake from Databricks "EXTERNAL_OAUTH_USER_CLAIM_MISSING"

我正在尝试使用 OAuth 令牌从 Databricks 连接到 Snowflake。

我已经使用官方文档进行了配置(https://docs.snowflake.com/en/user-guide/oauth-azure.html#step-3-collect-azure-ad-information-for-snowflake)。

当请求令牌时,我还检索了看似有效的令牌。 json 格式为 {'token_type': 'Bearer', 'expires_in': 3599, 'ext_expires_in': 3599, 'access_token': '令牌在这里}'

但是,当我尝试使用此令牌时,它无效 - 在 Snowflake 中检查结果如下:

使用 https://jwt.ms/ 查看我的令牌中的声明,我发现以下内容:aud、iss、iat、nbf、exp、aio、appid、appidacr、idp、oid、rh、roles、sub、 tid, uti, ver.

缺少哪些声明?

最有可能的问题是 Snowflake 上 OAuth 集成对象的声明参数集没有传递正确的值。查看以下详细介绍了这些步骤的文章:

https://community.snowflake.com/s/article/Create-Security-Integration-User-To-Use-With-OAuth-Client-Token-With-Azure-AD