我正在尝试在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版本可以解决此问题。