custom_sm = app.config.get( 'CUSTOM_SECURITY_MANAGER') or SupersetSecurityManager if not issubclass(custom_sm, SupersetSecurityManager): raise Exception( """Your CUSTOM_SECURITY_MANAGER must now extend SupersetSecurityManager, not FAB's security manager. See [4565] in UPDATING.md""") appbuilder = AppBuilder( app, db.session, base_template='superset/base.html', indexview=MyIndexView, security_manager_class=custom_sm, update_perms=utils.get_update_perms_flag(), ) security_manager = appbuilder.sm results_backend = app.config.get('RESULTS_BACKEND') # Registering sources module_datasource_map = app.config.get('DEFAULT_MODULE_DS_MAP') module_datasource_map.update(app.config.get('ADDITIONAL_MODULE_DS_MAP')) ConnectorRegistry.register_sources(module_datasource_map) # Flask-Compress if conf.get('ENABLE_FLASK_COMPRESS'): Compress(app)
app.wsgi_app = middleware(app.wsgi_app) class MyIndexView(IndexView): @expose('/') def index(self): return redirect('/superset/welcome') appbuilder = AppBuilder( app, db.session, base_template='superset/base.html', indexview=MyIndexView, security_manager_class=app.config.get('CUSTOM_SECURITY_MANAGER'), update_perms=utils.get_update_perms_flag(), ) sm = appbuilder.sm results_backend = app.config.get('RESULTS_BACKEND') # Registering sources module_datasource_map = app.config.get('DEFAULT_MODULE_DS_MAP') module_datasource_map.update(app.config.get('ADDITIONAL_MODULE_DS_MAP')) ConnectorRegistry.register_sources(module_datasource_map) # Hook that provides administrators a handle on the Flask APP # after initialization flask_app_mutator = app.config.get('FLASK_APP_MUTATOR') if flask_app_mutator: