bryanck / Superset-remote-user-auth-nginx

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Apache Superset remote user authentication

This code is easiest way to configure AUTH_REMOTE_USER on Superset and Flask_AppBuilder framework, enables automatic login on superset.

ToDo: Integrate SAML python library to manage token.

We suposse that you have Apache superset running as well. Let's do it

AUTH_REMOTE_USER Login

There are bit steps to do

  • Define middleware class, this will capture environment var
  • Update global ADDITIONAL_MIDDLEWARE
  • Define Security Manager (extends SupersetSecurityManager)
  • New Custom View class extends AuthRemoteUserView
  • Change AUTH_USER_REGISTRATION to False

Postman tests

Put on headers section your key and value. Of course user should be on Superset's database

Ngnix config

Edit your serversite configuration file and add

server {
        ...
        location / {
            proxy_pass http://localhost:8000/;
            proxy_set_header HTTP_PROXY_REMOTE_USER $1;
        }

Where 8000 port is Gunicorn or Superset Debug mode listen. Choose your own bind port.

Links:

Flask_AppBuilder

Werkzeug project

Sairamkrish on Medium

Yamyamyuo on GitHub

Mistercrunch on GitHub

About


Languages

Language:Python 100.0%