Flask应用程序构建器的Azure oauth登录问题

时间:2018-11-07 12:32:51

标签: python flask apache-superset flask-appbuilder flask-oauthlib

我正在尝试在Apache Superset上启用azure oauth登录。我已经创建了一个应用程序,并具有所有必需的权限,并且Reply URL设置为“ http://appurl/oauth_authorized/azure”。

现在的问题是,我得到授权了。但是随后当appbuilder请求用户信息时,在回调函数内部,Azure不返回任何内容。我认为代码是在这里发生的:https://github.com/dpgaspar/Flask-AppBuilder/blob/master/flask_appbuilder/security/views.py#L527

我尝试更改Azure上的Reply Url,文件中的config部分等,但似乎什么也没找到。如果您有任何想法,请把它扔给我。

这是我在config.py中的配置:

OAUTH_PROVIDERS = [
{'name': 'azure', 'icon': 'fa-windows', 'token_key': 'access_token',
    'remote_app': {
        'consumer_key': os.environ.get('AZURE_APPLICATION_ID'),
        'consumer_secret': os.environ.get('AZURE_SECRET'),
        'base_url': 'https://login.microsoftonline.com/{AZURE_TENANT_ID}/oauth2',
        'request_token_params': {
          'scope': 'User.read name preferred_username email profile',
          'resource' : 'https://graph.windows.net',
        },
        'request_token_url': None,
        'access_token_url':'https://login.microsoftonline.com/{AZURE_TENANT_ID}/oauth2/token',
'authorize_url':'https://login.microsoftonline.com/{AZURE_TENANT_ID}/oauth2/authorize'}
}]

编辑:如果仍然有问题,升级flask-appbuilder版本可以解决此问题。

0 个答案:

没有答案