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

Apache Superset集成Auth0时报scope意外关键字参数错误如何解决?

问题排查与解决方案

1. 解决request() got an unexpected keyword argument 'scope'报错

该错误的根本原因是错误配置了OAuth2流程不需要的request_token_url参数:

  • request_token_url是OAuth1.0协议的专用参数,Auth0使用OAuth2.0,你将该参数配置为oauth/token后,Flask-AppBuilder会尝试调用这个地址获取请求令牌,并且错误地将scope参数传入该请求,导致Authlib抛出参数不兼容的错误。
  • 直接删除request_token_url配置项,或者显式设置为None即可解决该报错。

2. 解决用户信息返回空字典的问题

删除request_token_url后出现用户信息为空,需要修正以下两处配置:

2.1 修正OAuth基础配置

原有remote_app配置存在多处不符合Auth0 OAuth2.0规范的问题,替换为以下配置:

OAUTH_PROVIDERS = [{
    'name':'auth0',
    'token_key': 'access_token',
    'icon':'fa-at',
    'remote_app': {
        'client_id': AUTH0_CLIENT_KEY,
        'client_secret': AUTH0_CLIENT_SECRET,
        'request_token_params': {
            'scope': 'openid email profile',
            # 新增audience参数,指定Auth0的API受众,避免返回不兼容的令牌格式
            'audience': f"{AUTH0_URL}/api/v2/"
        },
        # 服务端OAuth统一使用授权码流程,response_type固定为code
        'response_type': 'code',
        'access_token_url': f"{AUTH0_URL}/oauth/token",
        'authorize_url': f"{AUTH0_URL}/authorize",
        'access_token_method':'POST',
        'api_base_url': f"{AUTH0_URL}/",
        }
    }
]

2.2 修正用户信息解析逻辑

旧版的_content属性读取方式不兼容新版Authlib,替换为标准的响应解析方法:

def oauth_user_info(self, provider, response=None):
    if provider == 'auth0':
        res = self.appbuilder.sm.oauth_remotes[provider].get('userinfo')
        if res.status_code != 200:
            logger.error('Failed to obtain user info: %s', res.text)
            return
        me = res.json()
        logger.warning(" user_data: %s", me)
        return {
            'username' : me['email'],
            'name' : me['name'],
            'email' : me['email'],
            'first_name': me['given_name'],
            'last_name': me['family_name'],
        }

3. 可选版本适配验证

如果以上配置修改后仍然报错,检查依赖版本兼容性:

  • Flask-AppBuilder版本 >= 3.4.0
  • Authlib版本 >= 0.15.4,且低于1.0.0版本(1.x版本存在部分Flask-AppBuilder不兼容的API变更)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 01:24:01